Skip to content


Subversion checkout URL

You can clone with
Download ZIP


Official Agent Suggestions Thread #353

alias1 opened this Issue · 100 comments

(Started from discussions in #344)

Official 'suggest an agent' thread for Huginn!!

Have a cool idea for an agent that you want to see implemented?

  • Firstly, please check to see if the agent is already on the list.
  • Also have a quick look through the Issues to make sure it's not already being worked on.
  • Comment on this thread and we will add it to the list below!
  • If the agent is already on this list but you still want to throw extra support behind it, feel free to comment with your +1

Want to work on one of the agents on the list?

  • Create a new issue/pull request to discuss it and reference this issue so we can reference it on the list below and mark it as being in progress.
  • If there is already an issue reference and it's closed, tag one of us to reopen the issue for you.

Agent Suggestions

(Note: This list should be maintained in alphabetical order, ticked items mean in progress/actively being worked on, ticked items should be moved to 'in progress' list)

In Progress


  • AfterShip Agent (#295)
  • AgentCreatorAgent(#459)
  • AgentDiagnosticAgent(#459)
  • support (incl. for Broadcasts and other Channels)
  • Bitcoin Agent - send and receive Bitcoin payments
  • Bitcoin Spending Agent (#183)
  • Boxcar support for sending push notification messages to iOS devices
  • CalendarAgent (#459)
  • CalendarOutputAgent (like DataOutputAgent; I would probably write one - @knu)
  • Clipper Agent (#66)
  • DeviantArt Agent (#289)
  • Dropbox Agent (#321)
  • Evernote Agent (#320)
  • Fancy Hands Agent (#319)
  • Feedly support (get marked for later)
  • Geofencing Agent (#5)
  • GitHub agent see
  • Gmail Agent (#10)
  • Google Calendar Agent (#344)
  • Google Diff Match Patch support
  • Google Search results (changes in SERP for specified keyword and/or specified url)
  • Google Spreadsheets
  • Hubot Agent (#352)
  • IFTTT -> Huginn Bridge Agent (#331)
  • IRC Agent (#113)
  • A Jabber Agent that listens for incoming messages and spits them out as Events
  • Naive Bayes Agent - classify events based on training data
  • MailFetching Agent (#129)
  • Mqtt subscriber/publisher (see
  • Monitoring 'acceleration/deceleration' of values (#178)
  • PagerDuty - trigger PagerDuty incidents based on events, or take different actions based on incoming PagerDuty incidents.
  • Pocket support ( put something into read queue)
  • Readability support ( put something into read later)
  • Reddit Agent (#16)
  • RescueTime support (detect/report productivity or lack thereof)
  • Agent
  • Tumblr Agent (#290)
  • Website status monitoring (alert when website is down)
  • Websockets Agent (#192)
  • Whois tracking (detect changes in whois details for a domain)
  • WSDL-defined web-service Agent
  • Agent


  • CommanderAgent (AgentRunnerAgent #459 -> #570)
  • Pushover support (#233)

Similar services to Huginn (for inspiration)

@alias1 alias1 self-assigned this
@alias1 alias1 removed their assignment

@cantino / @dsander I can see this checklist getting pretty long/unruly pretty quickly, and perhaps management a bit painful. Do you think an official Huginn Agent Suggestion Trello board might be a good idea? (would have a similar setup to above, can still reference GitHub issues, and should be a bit cleaner/easier to manage)

@alias1 alias1 referenced this issue

Clipper agent #66


Various agents I'd be interested in contributing to (have existing ruby doing parts of this, which might only need UI/adapting)

  • Google tasks agent (So when I add an email as a google task, I can send it to trello)
  • Trello agent
  • Xero agent (So when I book leave, it can be added to a calendar)

Much bigger integrations/possibilities:

  • Ninjablocks integration - - a mix of Node, Physical sensors and MQTT (newer versions) lets you fire events for door opening, xbmc playing or actuate power switches. Has rudimentary rules engine built in; but rather than re-invent the wheel something like huginn could go a long way. Useful because it speaks 433mhz.
  • TheThingSystem integration - - NodeJS + Raspberry Pi + a load of plugins. Integrates with everything from lightbulbs, aircons, to Telsa Model S. Much more developer focused at the moment.

These all sound very interesting @CloCkWeRX, we'd love to have your involvement!


@CloCkWeRX Definitely a fan of Trello (#346 related), and Xero could be interesting too (does that mean you're an aussie too (Canberra based myself), or do they do international stuff?)


Am an Aussie (SA based). I have a few days free, so I'll spend a bit getting my local dev env happy. I'll probably focus on the xero part first - what I've got works with the payroll API for who's taking leave; though there's plenty of other bits and pieces that are interesting if you a small/medium business (invoice raised, payment made events?).


Cool :)

I've done a little with Xero through work. There are 3 auth methods for the API: private (public/private key), public (Oauth, key only valid for 30mins) and partner (Oauth, key doesn't expire)

The most useful one for something like Huginn is obviously partner, but there are a bunch of hoops and stuff to jump through to get that one as I understand it.

Will definitely be interested to see what you come up with!


So, are pretty much pre-made and trivial to refactor.

Here for example is a nikeplus agent (untested) -

Available, licensing etc dependent:

Name    Description Author
App Store Rating and Votes  Get the average rating and total votes of your iOS App  Stefano Bortolotti
Asana Tasks Today's tasks in Asana  Will Johnson
Atlassian Jira Agile: Remaining Sprint Days Displays the remaining days for the active sprint for a given scrum board   Christian Galsterer
Atlassian Jira: Number of issues in a Jira filter query Displays the number of issues in any filter query. Supports multiple filters and widgets in a single dashboard. Christian Galsterer
Atlassian JIRA Open Issues  Displays number of open issues currently in JIRA for a given project    ahanmal
Badge Overflow: Unearned Badges Calculates progress towards unearned Stack Overflow badges  Adam & Stephanie Sharp
Bacula widget   Displays the bacula state of your backup environment    visibilityspots
B-Cycle Bikes Available Get bikes and docks available for B-cycle (bike sharing service)    Stephen
Badge Overflow: User Profile    Displays Stack Overflow profile info, including reputation and number of awarded badges Adam & Stephanie Sharp
Bamboo Plan Status  Atlassian Bamboo plan build status  Gavin Bunney
Betaseries  tv-shows airing next retrieved from betaseries  Antoine Brisseau
Big Image   Scale an image to fit in the widget Benbria
Bitbucket User Followers    Users followers from Bitbucket  jeroenbegyn
Broadsoft Queue Count   Call center Queue calls waiting Alsoongit
Camera Widget   Displays and updates static jpeg images from IP security cameras    Jake Champlin
Capital Bikeshare   Get bikes and docks available for Capital Bikeshare (Cabi)  Derrick Bryant
CircleCI    Circle CI Project Build Status  Pete Hamilton
CircleCI (List) Circle CI Project Build Statuses    Pete Hamilton
CircleCI: Forecast  Circle CI Project Status Forecast   Chavez
Cloudability    Cloudability monthly spend  Colby Aley
Code Climate    Code Climate GPA    dgehrett
Code Climate    Code Climate widget Rafael Carvalho
Code Ship   Code Ship widget    Rafael Carvalho
Coderwall Rank  Show your team's Coderwall rank mathias
Countdown   Countdown widget    Ruleb
Daily Dilbert   Daily Dilbert strip retrieved from  Brunas Case Count Get the number of cases in your account, using their API   Runar
Disqus  Display Comment Count from Disqus   SeanJA
EC2 CloudWatch  CloudWatch stats in Dashing Benbria
Errbit  Displays the unresolved errors from the projects you've specified on your Errbit server kevintuhumury
FB link stats   Details of facebook link shares Gregology
FB page stats   Details of facebook page stats  ephigenia
Fikket participants Amount of participants for a Fikket event   joren
Fitbit  Displays your steps, calories, distance, battery level and more from kevintuhumury Weather Displays weather from   mjamieson w/ Climacons    Displays extensive weather information from with Climacons  ysim w/ Skycons  Displays weather from with Skycons  toddq
Foursquare Widget   Checkins with images for a Foursquare venue parthibanloganathan
Foursquare chekins widget   Simple display of total # checked in people at a venue  visibilityspots
Foursquare Venue Checkins   Checkins on a foursquare venue  ephigenia
Freshdesk Dash  Display a short list of Freshdesk users with the most tickets assigned. Kent Dahl
FridayBeer  Show your need for a friday-afternoon beer  mr-deamon
FullPie chart   Show awesome pie charts with ease   mattia72
GitHub Next Milestone   Show next GitHub Milestone and due date Benbria
GitHub Next Milestone (multiple projects)   Show next GitHub Milestone and due date for multiple projects   Jurre
GitHub Organization News Feed   Display your organization's activities and events   kimh
GitHub OctoStatus   Pulling out all the stop(light)s while displaying the current GitHub status David Campbell
GitHub Repositories List    User or Organisation Repositories Watchers/Forks    ephigenia
GitHub Repository Stats Various stats for a given repository    cmaujean, erikh
GitHub Status   Displays the current status of GitHub   Iain Mitchell/Ben Flowers
GitHub User Info    User Info from GitHub   ephigenia
Gitlab issues and bugs  Gitlab issues and bugs widget per project.  joren
Gitlab repo + issue open    Gitlab acces via API show a list of project and issues opened   Fiyorden
Google Calendar Google Calendar events widget with custom calendar colors   designoid
Google Calendar Attendees   Google Calendar event attendees widget  blackjid @ platanus
Google Maps Google Map widget with custom colors    andmcgregor
Google Play Market  Google Play Market application score and voter count    ephigenia
Google Play Advanced    Google Play market statistics with advanced list support    designoid
Graphite Graphs Displays Graphite graph images and auto-resizes and refreshes them  josno
Havag Info  Displays departure times of trams and buses in Halle (Saale), Germany   Terminal.21
Heroku Dynos    Displays number of active Heroku dynos  robotmay
Heroku Status   Shows Heroku status bhankus
Honeybadger Errors  Displays top Honeybadger errors bhankus
Hotness Changes the widget's colour depending on the value displayed    DashboardDude
Instagram by Location   Displays Instagram Photos based on location mjamieson
Instagram User Info Instagram User’s info: followers, following, photos   ephigenia
Jenkins Build   Displays Jenkins build progress steintore, mavimo
Jenkins Last Commit Displays information about last SCM commit for a Jenkins job    kalenwatermeyer
KACE K1000 Ticket Counter   Shows open ticket count for the KACE K1000 service desk Paul Liu
Klout Score Klout Score ephigenia
KVB next trains Show the next KVB Trains from a station next to you bascht
LastFM  Display the most recently played or currently playing track Craig Coles
Librato Metrics Create a graph based on metrics reported by Librato Matt Towers
Load Averages   Load Averages for *nix servers  Gregology
Loggly  Graph log data from loggly  Ben Flowers
Mandrill Mail   Mail stats from Mandrill    dgehrett
MixPanel Event Total    Display total number of events from MixPanel    Ilya Katz
MyWind  Displays information about your Italian Wind mobile contract (SMS, voice minutes, data, ...)    Simone Busoli
Nagios  Nagios warning and error counts Alexander Else
Nest    Nest thermostat data    Eric Gonzalez
Newrelic    Newrelic metrics    assimovt
News    Displays the latest BBC News top stories    Iain Mitchell
New York Subway Displays the New York subway status from the MTA    John Barker
Nike+   Displays data of your last Nike+ activity   danillotuhumury
Ntile   Takes any timestamped data feed and displays the value for the current day (or defined time period) in statistical context. PareidoliaX
Opsview Displays Opsview Criticals, Warnings, Hosts Up/Down hawk554
OC Transpo  Display arrival times for OC Transpo Buses  Benbria
PagerDuty   Show PagerDuty incidents and on-call information    thegreenrobot
PageViews   Display the Pageviews From GA   SeanJA
Pianobar    Display song information from Pianobar, a Pandora client    Kyle Johnson
Pie chart   Show awesome pie charts with ease   stevenleeg
Pingdom Displays a list of Pingdom statuses james
Pingdom bundle  Bundle of Pingdom widgets including status and uptime   Rafael Carvalho
Pingdom Uptime  Displays the mean of all or part uptime probes  pydubreucq
Pivotal Tracker Pivotal Tracker Story Statuses  dirkkelly
Pivotal Tracker Burndown    Pivotal Tracker current iteration's burndown    gaelrottier
Pivotal Tracker Iteration   Pivotal Tracker Iteration Stats marcus
PuppetDB Stats  PuppetDB Stats  bitflingr
RandomAww   Display a random cute picture   chelsea
Reddit  Display top 5 posts/score/comment count per subreddit(s) of your choosing   kevinquillen
Reload  Periodically reload the dashboard to get around JS memory hogging   Alexander Else
Remember The Milk   Display your overdue tasks (or configure it to do something else)   kevintuhumury
Remember The Milk   A clone of the widget from kevintuhumury using icalendar instead of milkman to access the tasks luzifer
Remote Reload   Reload your dashboard when you make changes Benbria
Rickshaw Graph  Drop-in replacement for the built in Graph widget   Benbria
RSS Feeds   Display multiple RSS news feeds.    toddq
Semaphore CI    Display build status of project on Semaphore CI rastasheep
Sensu   Display Sensu alerts    Matthew Richardson
Server Density  Display current server density alerts   johnwards
Server Status   Display status of servers   Will Johnson
Server Status Squares   Display status of servers using squares Welsh
Sidekiq Display stats for a Sidekiq Background system   pallan
SirPortly tickets   Show open tickets for a SirPortly department    joren
Slideshare User Info    Slideshare User Info (Followers, Number of Slides)  ephigenia
SNMP Interface Bandwidth    Display bandwidth utilization over time RAdzima
Sonar   Display Sonar metrics   EHadoux
Sonar Secured   Display and configure Sonar metrics for a secured or unsecured Sonar repository.    Aaron Kaka
Soundcloud Listens  Display Soundcloud listens. pezholio
Squeezebox Now Playing  Display currently playing song of a Squeezebox player.  tobru
Startup quote   Daily wisdom about startups assimovt
Stash Pull Requests Display open pull requests for projects or specific repositories from Stash warmfusion
Subway Info Subway information like train arrival time, station, etc. for New York and other cities.    parthibanloganathan
TeamCity    Display TeamCity CI build status    Jurre Stender
TFL London Underground Status   London Underground Tube Status  Khash Sajadi
Thruk nagios status Nagios status with thruk front end  Nicolas Leclercq
Time Since Last Tracks time past since the last occurrence of an event  hannesfostie
Traffic from TomTom Ranks drivings times of routes using dynamic traffic data   sighmin
Travis CI   Display Travis CI build status  Zendesk
Trello  Display Trello boards info  mordonez
Twitch.TV   Add Twitch Stream to Dashboard  magicguitarist
Twitter Search  Twitter Search with v1.1 API    jeroenbegyn
Twitter User Info   Twitter Followers/Following/Tweet Count ephigenia
Vimeo User Info Vimeo User contacts, albums, likes etc. ephigenia
Vimeo User Videos   List Vimeo user’s videos by likes, comments or sum    ephigenia
Visitor Count   Google Analytics visitor count (OAuth2) Matt Towers
Visitor Count (multiple sites)  Google Analytics visitor count (OAuth2) fork to support multiple sites  Will Johnson
Visitor Count Real Time Google Analytics visitor count (OAuth2) fork to support real time   Robert Boloc
Weather Displays weather info from Yahoo    David Underwood
World Clock Displays the time in another time zone  Steve Klise
World Cup Brazil 2014   Displays the next matches for the Brazil 2014 World Cup blackjid @ platanus
World Clock Displays time at multiple locations Wei Lu
Yahoo Stock Quote   Yahoo Stock Quote   ephigenia
Yahoo Weather   Displays weather information using Climacons.   danillotuhumury
Youtube Video Stats Youtube Video Stats ephigenia
Zabbix Trigger  Show number of zabbix triggers  chojayr

The widgets feel like they have a lot of moving pieces. Huginn Agents have one, or sometimes two, files, plus a spec. If we're going to bundle lots of assets, I wonder if we should extract Agents into gems first.


I definitely like the idea of using dashing for our dashboard (why reinvent the wheel), and if we can make a nice interface from Huginn -> Dashboard widget, all the better!

I think there is merit to being able to potentially use the widgets, but I don't think it's a priority due to the complexity I feel it would add. And I definitely think that we should be looking at seperating our agents out into their own gems/whatever first, and/or the 'Huginn API' idea (since isn't dashing a nodejs thing?)

As an interim, either reimplement the dashing widget in Huginn if it makes sense, or create the concept of a Huginn -> Dashing shim agent (or reuse an existing agent for it, not sure of the specifics, but I assume Dashing can provide stuff in a consumable format like JSON?) That way we can get the benefits of integration without a huge level of complexity. Quick wins!

The way I see it, if we are running dashing, there is no reason you can't have the 'standard widgets' alongside 'Huginn widgets'.

I think an easy way to run Huginn and dashing side by side (default?) would be good, but also the ability to point to a seperated instance of Dashing if the user wants to. (ease, but also flexibility)


And I definitely think that we should be looking at seperating our agents out into their own gems/whatever first, and/or the 'Huginn API' idea

Yeah I agree there, I guess my main point was to examine a project like that to find the real world patterns/problems they have solved.

Interestingly, they rely on git repos or gists, not gems.

There's at least a structure similar to:

widgets/ # scss, coffeescript and other template type concerns
jobs/  # mix of wiring up the scheduler and the doing bit
lib/ # Supporting libraries # Usually pretty good documentation here

No specs by default.

The project itself contains a 'gist downloader' rather than relying on rubygems, something seen in projects like ninjablocks (copy/paste a gist url to add a new widget). I guess this lowers the bar for contribution/quick hacky agents.

Having played with some of the various plugins and thinking about how to seamlessly transition them to Dashing, it's a pain - the assumption of a global SCHEDULER means it's executing code the moment you load it.

I'd encourage us to adopt a similar structure, possibly even include a jobs/ folder with a default schedule and put our agents in lib/ as it's a bit neater.

(since isn't dashing a nodejs thing?)

Sinatra based, bunch of frontend JS to get data to widgets.


Sinatra based

Ah. I remembered it wasn't rails at least! :p


Alrighty, have a Google calendar publish agent pretty much ready to go, need to get signoff re open sourcing it from 1-2 folks.

It's based on service accounts, not OAuth, which is a little more complex to setup than a 'grant permission X to system Y' UI flow; but a lot simpler from a development perspective - no callbacks, etc.

It should also introduce a helper library that makes it easy to make a GoogleCalendarReadAgent, and with the general service account approach + enable a bunch of other agents (Drive, Tasks, Google+, etc)


Will @dsander's #324 branch help with this? Perhaps we can get that released soon, before I launch Scenarios.


New idea to add @alias1: Integration with Fara, for tracking packages.

I've yet to find a comparable service in terms of features, and certainly nothing on the open source side of things. Most delivery services require users to register their own API account. Fara covers 24 (?) or so different delivery services.

They don't have an open API at this time, but I have reached out to their team via email to see if they'd be interested in allowing us to develop a module for Huginn. Their terms only forbid "bots" for automated registrations, so it's possible that the module could do some rudimentary scraping/interfacing instead of using an official API without breaking their ToS.


Haven't looked into it much, and don't know where the 'ethical' line lies with Huginn, but #384 (comment) mentioned which sounds kind of cool.

On that same sort of notion, things like Yify API, SABnzb, Sick Beard, Headphones, etc

(Disclaimer: ..for monitoring, statistical analysis and/or making legal backups of your owned media with regards to all laws and regulations in your area, etc..)


Zendesk API (new ticket arrived, quick lookup the public transport timetable so you don't have to deal with it!) - just started tinkering on my local this morning.


@imsoftware Bittorent Sync looks awesome! Hadn't seen it before.


How about a Jabber agent that can accept a limited repotoire of commands for the rest of the agent network? Here's my thinking:

Earlier this week I noticed that I hadn't received any alerts from my agents for a couple of days. I logged into my VM, restarted Huginn, and was suddenly caught up on everything that they'd done as the alerts piled in. I'm not sure if it was outbound e-mail that wasn't working or if the scheduler messed up, or what; that's another issue. Anyway, it would have been useful to send an XMPP message to a listening agent that would have caused it to ping the other agents in my Huginn instance for status updates ("ROBOTS, REPORT."), bundle them into an XMPP message, and send them to me. If no response had come back it would have been an early warning that something was amiss.

Such an agent could support a number of status report commands, such as listing agents, showing the number of events an agent (or all agents) have picked up, CPU and memory utilization, or things like that.


"Mailboxes know a lot. Use them.
Context.IO is a REST email API that makes it easy and fast
to integrate your users' email data in your application."

First 5000 mailboxes

Mailboxes 5001 and above
10¢ per mailbox per month


@virtadpt Sorry to hear that your agents stopped running. If you want to make an issue, maybe we can figure it out. I like the XMPP idea, but am not clear exactly how it'd work. Would it be agents consuming XMPP, or more of a side-band XMPP API?

@alias1 Interesting!

@CloCkWeRX Zendesk API agents (or maybe just PostAgents?) would be super helpful.


Two fairly similar sites (both probably be achieved natively), but might be worth checking out. Basically data extraction/turning unstructured websites into API's.


@cantino I don't have logs from the time of the lockup, I'm running Huginn from inside of Screen. If it happens again, I'll open a ticket with the information I've got and we can work from there.

The agent would consume XMPP. i.e., connect to an XMPP server as a user and listen for stanzas from a particular JID. If any of the stanzas from the trusted JID contained one of a handful of commands it'd follow them ('status', 'stop', 'restart'), so that Huginn as a whole could be controlled in a limited fashion through a sideband connection.


An agent which can e-mail a short list of recipients. Here's my reasoning:

I'm building an agent scenario ("Shake, Rattle, and Roll") that periodically polls the USGS Earthquake Hazards API for detectable seismic events where I live. Sending e-mail and XMPP messages to myself is trivial with the existing agent roster but I'd like to be able to e-mail the members of my family at the same time without their having to create accounts on my Huginn instance and clone SR&R for themselves (because they don't use XMPP on their phones, unlike myself).


Hey @virtadpt, that's a good idea. Would a modification of the email agents to just optionally accept a list of emails work for you?




Adding in #408, @virtadpt.


sms agent.
both incoming and outgoing. the outgoing bit is easy. most/all cell providers have email gateways. so all that is needed is a dropdown for providers and a mapping of those to the gateways combined with the normal email agent. incoming will require a sms gateway of one's own and i'm not sure what is available there.


is anyone working on the bayesian agent yet? if so link to the code please?


@haxwithaxe There is a Twilio agent that can do SMS and phone.


@cantino Thank you!


A Dashboard made with dashing as an agent could be very useful.

Why dashing ? because it does not rely on third parties provider to support a nice dashboard.
There is also dashing-rails which is pretty the same thing but for rails (not sinatra).


i also just started to write the email gateway version and it's way more complicated to choose the right gateway than i expected :P
i was hoping to avoid yet another cost per text but i don't think it's worth the hassle of writing a whole new agent for it.


@haxwithaxe Wow. If someone has a pre-made mapping of email-to-sms gateways, that'd be useful. Otherwise, I suppose you could volunteer to either build a JSON lookup webservice or a Ruby gem that provides a community-maintained mapping. ;)


-making- made a webscraper for the page :D but in python cause i'm new to ruby still. json or ruby output though.


Not sure if this is the best place to post this, but I put together an Android Tasker Profile to interact with the Huginn User Locations Agent here. You can set Tasker up to turn your GPS/location services on every 30 minutes or whatever, snag your location, and then send a POST to Huginn pretty easily. If there are any Android users in here that want to try, I put instructions on that repo. (Hopefully the instructions are clear enough, though.) You can even do cool things like telling it to NOT get your location under certain circumstances. For example, I have mine set to not activate when I'm connected to my home or work wi-fi.

I think there could be a lot of cool Tasker/Huginn interactions. An agent that would consume various pieces of data from your phone could be interesting, I think. (Tasker also has a pretty big community, and I think that a lot of them would like Huginn, as they are somewhat conceptually similar.)

On another note, has anybody considered a CSV export feature for events? Could be useful.


Awesome @naiyt! I think it'd be worth adding a page or link to the wiki about this, if you have time.


Support for Lift habit tracking


Another dashboardy type thing:

@alias1 alias1 referenced this issue

Dashboards #132


Sure, @cantino, I'll write something up for the wiki once I get some time.

By the way, do you guys know if somebody is working on the "Website status monitoring" listed in the ideas? If not, I might hack on that in a month or so, since it's something I would like.


@naiyt Thanks! I don't know if anyone is working it-- that'd be a nice addition!


How about adding xmlrpc format to the post agent.


Is there any kind of AgentAgent? Some kind of agent to make changes or control other agents' settings, IE schedule, parameters, enabled/disabled?


Yup! #459


Thanks @cantino, I knew about that one but haven't looked at the issue in a couple weeks, it's much more robust than I originally thought!


An alternative to the Twilio agent could be one that connects to Textbelt (source). It exposes a simple API that then turns around and sends SMS messages via a multitude of provider's email-to-SMS gateways.

knu commented

Added some agent ideas found in the #459 thread.


An agent that is specifically geared to catch error conditions emitted as events from other agents would be nice. It'd make debugging agents much easier because they wouldn't fail silently anymore (like WeatherAgent does). It would also make it possible to gracefully alert on error conditions; for example, I'd like to run them through an instance of JabberAgent to let me know that something went wrong. It would also make it possible to instantiate error handling agents multiple times, and associate them with different scenarios.


@virtadpt Making an Agent that consumes the AgentLogs of other Agents would probably be fairly straightforward, if you're interested in trying it.

@darkpixel for time tracking! :)



Given a URL, this agent downloads the file to a specified or default place on disk and returns the filename, file path and an MD5 of the file. The file can either be immediately deleted or it can be kept on disk.

Similarly: S3Agent for manipulating files within S3.


Cool ideas!


@knu any word on the AgentRunnerAgent? I'm trying to get a workflow to run another agent only on Sunset, that seems like the ideal way to do it


@snicker You mean you have an agent to emit an event for every sunset and sunrise, which you want to use as a trigger to enable and disable another agent, respectively? That'd be a cool use case. I'll put that on my task list.


I'd be interested in a Flickr agent, one that can fetch public photos (search by keyword, get latest from my contacts' photostreams, etc.), and my private photos through the API.

My use-case is wanting to send an email digest to family members when I post new pictures on there (most of the are family-private) and/or create Flickr "passes" to send the pictures to non-Flickr-using friends via email when I upload them.


I would be interested in Podio agent with similar functionnality as provided in Zapier.


I'm looking to use huginn as a local stand-in for IFTTT type of functionality. I just prefer to have it all on my own servers.

I already use node-red ( for connectivity between my various home sensors and actuators. Data comes in on TCP sockets, and is routed to charting apps like graphite/grafana, or to a local data store, to other APIs (like turning on/off X10 devices), or sometimes to external apps like Xively,

Has anyone thought about or have any ideas about how these two applications might work together?

Can huginn agents work with TCP Sockets?

Thanks for any tips,


Hey @TinajaLabs, nodered looks quite interesting. We have a MQTTAgent that I believe people use for home automation. It would also be straightforward to add TCP support to Huginn, someone just needs to finish #111. You might ask @CloCkWeRX or @knu about MQTT.


There is already a JabberAgent that can send Jabber messages but the opposite is missing.
An Agent that listens for incoming messages and spits them out as event would be cool!


Would a ZoneMinder agent be possible?


@K1773R That would likely be pretty straightforward to add.

@mstinaff Probably? Assuming ZoneMinder has a reasonable API.


Hey! I'm thinking about writing a Firebase agent. Are there any existing agents that interact with databases that I might want to look at for reference?


@alias1 @cantino Maybe the dropbox agent should be marked as done, cause of #582 and #572?


Yup @bennlich, thanks!


@bennlich A Firebase Agent would be awesome. Want to make a new issue to discuss it?


Done! #700


Could you add my Jabber idea (above) to the Backlog?


Added it @K1773R, thx!


I am short on time but have a scant amount of cash and would love to help things along, especially w/ Google sheets and work. Is there a good way I could sort of microinvest in the community getting progress on these? Bountify? LMK!


Great tool!
I would suggest Docker for ease of installation(


Is there a plan for google+ agent?

knu commented

@MartinDelille Not currently on the list, but you could ask us to add one. Can you share the use cases in your mind? IIRC, Google+ API is basically read-only. Is that still the case?


I just installed huginn for the first time and am playing around with it. An instagram agent would be great :)


Welcome @benjsing!

That'd be a great contribution if someone wants to build it! :smile:


Thanks @cantino
I am just getting into huginn, so it might be a while... but if I can figure out how to implement the instagram api, I will.


I just installed huginn. An emacsclient agent would be great. The agent could place an orgmode agenda entry for emails or weather alarms...


That'd be interesting @trenkert.


+1 to agents for Pocket and Reddit especially, but also IRC and an IFTTT "bridge".


An amazing idea would be to create an agent that sends notifications to smartphones and such.
For now I think the easiest is to use : and create an agent based on their API.


@farfeduc We already have an agent for does pushover do anything different?


@dsander I guess it is quite similar. I did not know Pushbullet before. Thanks for sharing it.
It seems though that Pushbullet is free. Pushover is not.
I'll try and tell you if it's what I was searching for. Thanks !

knu commented

We already have PushoverAgent as well as PushbulletAgent. You can even use PostAgent without them as long as they have REST API.


What about an OpenHAB 2 / Eclipse SmartHome Agent?
Imagine Huginn controll your lighting, locks, thermostats, cameras in your home..


Hey @LorbusChris, I think that'd be a great contribution if you want to work on it!


It'd be awesome if there was an agent to interact with different ownCloud features, especially the core file functionality.


I was looking for a pocket agent too but there are two work-arounds.
First is to use IFTTT to put an RSS feed into pocket (which I was using wth yahoo pipes).
second is to use the email agent to send to (you have to register the address sent from with your pocket account first)
I'm trying both at the moment - both seem reliable but first allows you to add tags on the way


@johnleeming those both seem like good solutions unless someone feels like adding a PocketAgent.


I suggest so we could act when our docker images are pushed to the registry.



Maybe put OpenHAB 2 on the list. Its not just MQTT, its got its own API. Their WebUI demonstrates the use of it:
Once OpenHAB2 is out in a stable release, I will come around and set up an agent, but if anyone would like to start with it now, it think having a look at their Paper WebUI is the right way to start.


I think currency rate exchange agent would be useful.


@MOZGIII This can be done relatively simple via the WebsiteAgent and one of the services in the following link:


Yeah, and there is @RubyMoney which provides enough abstraction and functionalinty to work with money relatively simple. I haven't got the time to implement this stuff yet however.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.