STORE PACKAGE
AGPL-3.0 · SELF-HOSTED · YOUR KEYS

Productivity · Store package · v1.2.0

Feeds

Your connected message feeds in one place - live stream, activity trends, hot channels, and trending topics over your own Slack messages, with a curator bot that answers 'what did I miss'.

Opens ?app=feeds on the demo deployment. On your own box it is the same URL.

1 screen in the ribbon · opens on feeds-dashboard

Feeds

What it does

The rest of the story.

The feeds-indexing engine + cron, the feeds-curator inline node, the slack connector, and the /feeds framework page stay framework-resident; this package is the surface over them.

What you can ask it

Tools the bot can actually call.

Registered server-side, scoped to the signed-in user. The bot calls the tool — it never shells out, and it never handles the credential behind it.

How it runs

What happens when you use it.

Not a chat window with a plugin behind it. Every step below is something the app declares in its manifest, which is why it can be told to you plainly.

  1. 01

    You open it, or the assistant does

    Opening ?app=feeds loads its 1 screen into the shared cockpit, starting on feeds-dashboard. The ribbon, the ticket list and the assistant are already there — the app contributes views, not a second application to log into.

  2. 02

    Or you just ask

    The assistant classifies what you asked for and hands it to the bot that owns that domain. You do not pick the app, and you do not learn a command — routing is by declared capability, not by keyword matching a menu.

  3. 03

    A named bot picks it up

    feeds-curator is accountable for the work. 5 declared capabilities say what it is trusted to do; the tokens and dollars it spends are recorded against that identity, so the cost has a line item rather than disappearing into a monthly bill.

  4. 04

    It reads your accounts without ever holding the keys

    The connector call happens in a fixed server operation outside the model. Only the normalized result reaches reasoning — the token stays encrypted and scoped to you.

  5. 05

    Longer work becomes a ticket

    Scheduled and swarm-initiated work enters the queue as a feeds ticket. It is durable, it has an owner, you can watch it move through its phases, and if it fails it fails somewhere you can open and read.

  6. 06

    The result lands where you can check it

    Back on the app's own screens, as state you own — not as a chat message you have to scroll back to find.

With the assistant

You can ignore this app entirely and just ask.

The assistant is the front door. It classifies your request, delegates to the bot that owns the domain, and answers in one voice — so you do not have to know which of the applications this happens to live in.

Accountability

5 capabilities, each attached to a named identity.

Declared in the manifest and bound to the bot above — so "what is this thing allowed to do" is a list you can read, not a prompt you have to trust.

feed-aggregationfeed-summarizationhot-area-detectiontrend-analysissentiment-triage

What it needs

Before it can do anything for you.

Also on the productivity shelf

Apps that pair with this one.

All 11 productivity apps →

Underneath

What every app on this site is standing on.

This app does not ship its own queue, its own credential store or its own cockpit. It declares what it needs and the platform provides it.