nc://hyperactive

v0.1.0Pinned
ThomSharktools/nodecode-hyperactive: Keeps your goals, promises and decisions, then speaks first with check-ins, nudges and yes/no cards. - a rewrite of justin06lee/hyperactive (MIT), credited to justin06lee9220d12· 10 Nov1 commit
test2 filescell.lisp57.8 KB

nodecode-hyperactive

Hyperactive: goals, promises and tap cards that speak first. A Nodecode rewrite of justin06lee/hyperactive by justin06lee.

The operator states a goal, a promise, a decision or a quick call; the cell files it, and then it does the asking. Every pulse it looks for what is due -- a check-in, a promise that has come due, a decision to revisit, a goal that has stood still, a card waiting on an answer -- and says it, as one message, each item naming the goal it serves.

Get it

Tell the agent "add the hyperactive cell", or run nodecode add nc://hyperactive.

Set it up

Nothing is required; the defaults are a pulse every five minutes, at most five items in one message, a card re-asked after an hour, and a nudge after three still days. They live in the hyperactive section of ~/.nodecode/config.jsonc (or /settings):

"hyperactive": {
  "pulse_minutes": 5,          // how often it looks for what is due
  "max_items": 5,              // most items one message carries; the rest wait
  "card_minutes": 60,          // before a card is asked again, and again before a low-stakes one is settled
  "stale_days": 3,             // a week goal standing still this long gets one nudge (quarter goals: four times)
  "quiet_hours": "22:00-07:00" // local; empty is never quiet. Deferred, never dropped.
}

What it keeps is one file, ~/.nodecode/hyperactive/state.json, under the home.

Use it

Ask for what you want in the conversation -- "I want the draft out by Tuesday", "I owe Sam the deck Friday", "we're going with SQLite, let's revisit in a month" -- and the model files it through the ha_* tools. Or drive it yourself:

/hyperactive                          goals, cards, promises, the schedule
/hyperactive due                      run the pulse now
/hyperactive answer CARD OPTION       answer a tap card
/hyperactive why                      why it last spoke
/hyperactive done COMMITMENT          close a promise
/hyperactive goal HORIZON TITLE [--parent N] [--follow-up WHEN] [--why TEXT]
/hyperactive followup GOAL WHEN TEXT
/hyperactive decision ID keep|revise [new choice]

Two rules keep it safe to leave running. Every message names the goal it serves, so /hyperactive why can explain any of them. And it never settles money, public or irreversible calls: a low-stakes card whose recommendation goes unanswered is asked again after card_minutes, settled through its typed action as long again after that, and anything else waits for the operator however long it takes.

A due item arrives as the cell's standing notice: the operator sees it at once, and the model reads it at the tail of its next request, so it brings it up on its own. The pulse makes no model call.

Licence

MIT. A rewrite of justin06lee/hyperactive; see NOTICE and LICENSE.

Add nc://hyperactive

  1. 1

    Install Nodecode

    Once per machine.

    $ curl -fsSL https://nodecode.ai/install.sh | sh
  2. 2

    Add the cell

    Pinned at 9220d12.

    $ nodecode add nc://hyperactive

    Or tell the agent add the hyperactive cell.