* feat(pstack): setup-pstack budget ask (max/xhigh/high/medium)
Step 3 of /setup-pstack asks for a budget first (unlimited, large,
medium, small), rewrites the effort token of every real slug in the
working table to the budget's target, clamps to the detected set within
the same family, and then shows the roles for confirmation. Step 2 reads
the recorded budget line and step 5 writes it. No version bump.
Co-authored-by: lauren <poteto@users.noreply.github.com>
* docs(pstack): mention the setup-pstack budget in README and setup guide
Co-authored-by: lauren <poteto@users.noreply.github.com>
* refactor(pstack): tighten setup-pstack step 3 to three short parts
Drop the four-by-four example table, the repeated family and fast
explanations, and the re-run essay. Keep the four budget labels, one
remap rule with a one-line example, the confirm paragraph, and the
budget line in the written rule.
Co-authored-by: lauren <poteto@users.noreply.github.com>
* fix(pstack): setup-pstack step 3 rebuilds before the budget, keeps aliases, records the chosen budget
Bugbot on #366. The working table is built from the defaults first, on
every run, so unlimited on a re-run restores the default efforts. The
carry-over set names alias roles. Step 5 says the budget line holds the
chosen label and target effort.
Co-authored-by: lauren <poteto@users.noreply.github.com>
---------
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
* fix(pstack): bug-fix/perf/hillclimb defaults to grok 4.6
Point the three code-delegate roles at grok-4.6-fast-xhigh, the slug feature and refactoring already use. The setup-pstack rule template and the playbook default annotations now agree. Judgment, prose, hardest tasks, explainers, synthesizers, and panels stay on Fable 5.1.
Co-authored-by: lauren <poteto@users.noreply.github.com>
* chore(pstack): bump to 0.15.3
Co-authored-by: lauren <poteto@users.noreply.github.com>
* docs(pstack): README blurb names the code roles on grok
The get-started paragraph said precisely-specified code goes to fable 5.1 and only fast mechanical code goes to grok. Bug fix, perf, and hillclimb now default to grok with feature and refactoring, so the blurb lists the five code roles on grok and keeps the hardest changes, prose, and judgment on fable.
Co-authored-by: lauren <poteto@users.noreply.github.com>
* Revert "chore(pstack): bump to 0.15.3"
This reverts commit aeef9b7e22.
---------
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
* fix(pstack): operator-neutral pronouns + in-chat status tick
The autopilot playbooks and the multi-phase plan refer to the human
operator as she, her, and herself. Replace each with the operator, or
with they where the paragraph has no owner to confuse it with.
The audit tick prompt in the plan skeleton now reads post a status
message to the operator in chat instead of send the operator a status
message, so a root posts status in the chat it runs in rather than to a
named person or channel.
Co-authored-by: lauren <poteto@users.noreply.github.com>
* chore(pstack): bump to 0.15.2
Co-authored-by: lauren <poteto@users.noreply.github.com>
---------
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
The card has no skills or MCP server. It requires Grok Bot 0.49 and is never allowed in Cursor, so the backend can handle the connection itself.
Co-authored-by: Alex Vandak Maloney <maloney.a12@gmail.com>
Register the Microsoft Teams and SharePoint REST-MCP endpoints the same way Outlook is wired, so they can be installed from the marketplace.
Co-authored-by: Cursor <cursoragent@cursor.com>
* pstack: every claim carries its evidence or its label
Add one bullet to the end of the Writing the reply list in the mode
skill. Agents state predictions and unseen causes as fact. The bullet
requires each claim to carry its evidence or its label (measured,
inferred, or guess) in the same sentence, and forbids handing the human
a check the agent could run.
* chore(pstack): bump to 0.15.1
Package Hunter's hosted Streamable HTTP MCP server
(https://mcp.hunter.io/mcp) using the official Cursor setup from
https://hunter.io/agents.md: X-API-Key with ${HUNTER_API_KEY}.
This is a fresh-from-main take on #317, which used OAuth-only config
and documented the API key as an opt-in alternative. Official Cursor
packaging is header auth, so plugin.json declares the HUNTER_API_KEY
template variable the same way other BYO-credential plugins do.
Co-authored-by: Sam Sokolin <SamSokolin@users.noreply.github.com>
* chore(pstack): bump plugin version to 0.15.0
Co-authored-by: lauren <poteto@users.noreply.github.com>
* docs(pstack): sync playbook count and table to twenty-three
The tree ships 23 playbooks, and the README table omitted opening-a-pr.
Add the row and change the two README counts and the guide's front-door
count from twenty-two to twenty-three.
Co-authored-by: lauren <poteto@users.noreply.github.com>
* docs(pstack): fix principle count in guide index and 08 heading
The guide index and the 08 heading still said 21 while the tree and the
08 body list 23 principles.
Co-authored-by: lauren <poteto@users.noreply.github.com>
---------
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Punctuation and single-word swaps only. No sentence added or deleted, no
restructuring, no new text.
- 65 markdown files under pstack/skills. 220 changed lines, every changed
line pairs with one base line.
- 272 rewrites. 239 semicolons (224 became a period plus a capital, 15 became
a comma). 29 connector colons (28 became a period, 1 became a comma).
1 em dash before a list became a colon. 3 word swaps (`public surface` and
`smaller surface area` to `API`, `echo the scaffolding` to `echo the
structure`).
- Label colons, colons before a list or an example, template strings such as
`file:line`, and the literal `TL;DR` stay.
- Heading, numbered-step, fenced-block, and line counts are unchanged in
every file. No frontmatter, code span, or fenced block changes.
- o200k tokens of the pstack/skills markdown tree 87,747 before, 87,766
after (+19), because a period plus a capital tokenizes one token longer
than a semicolon in a few places.
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
* docs(pstack): port the September skill audit cuts from the internal tree
Port of the 2026-09-01 to 2026-09-07 audit program on the internal skill
tree. Deletion-only density cuts and the mannered prose pass applied
wherever the OSS sentence is the same sentence. Two new principle leaves,
Attack the Premise and Test Behavior Not Implementation, with their index
lines. Critique mode removed from how and its callers. PR-body briefing
rules in opening-a-pr and technical-writing. Model pins stay on the
setup-pstack role mechanism. No internal path, slug, or name added.
* docs(pstack): restore the autopilot chooser rule that multi-phase-plan cites
multi-phase-plan step 4 picks between autopilot-full and autopilot-stack
"per the rule at the end of playbooks/autopilot-stack.md". The density
pass removed that paragraph and left the pointer dangling. Restore the
paragraph verbatim. The chooser is a rule, not a restatement, and no
other file states it.
Addresses the Bugbot finding on PR #329.
---------
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Plugin hooks do not run from the plugin directory, so ./hooks/... paths
fail with exit 127 from any other cwd. Use bash "${CURSOR_PLUGIN_ROOT}/hooks/..."
like continual-learning, which indexes and runs cleanly. Also scopes the
briefing's transcript_path line to the bound conversation, completing the
one-off-consult fix from #314.
Adds an Advisor plugin: the main model consults a stronger model before
major decisions, when stuck on an error, and before declaring a task done.
The advisor gets a full briefing plus the conversation transcript path,
returns a verdict with guidance, and the main model keeps doing the work.
The default advisor is the latest Grok (Grok 4.6) at its highest reasoning
effort; /advisor <model> accepts any model available to subagents.
- skill `advisor`: /advisor [model|off|status|ask ...|nudge on|off],
checkpoint protocol, briefing template, usable as a Custom Mode
- agent `advisor-subagent`: read-only, pinned to grok-4.6[effort=xhigh]
- hooks: track edits since the last consult, log consults to
.cursor/advisor/log.md, nudge a pre-completion consult once per batch
of edits; state is bound to the conversation that enabled it
- registered in marketplace.json and the root README
* feat(pstack): reference plugin logo and bump to 0.14.7
Add "logo": "assets/logo.png" to the pstack manifest, matching the
relative-path style used by google-calendar and thermos, and bump the
patch version 0.14.6 -> 0.14.7.
The pstack/assets/logo.png file itself is added in a follow-up commit;
the image attachment did not reach the agent VM in this run.
Co-authored-by: lauren <poteto@users.noreply.github.com>
* feat(pstack): add plugin logo.png
---------
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
New plugin, separate from the existing X plugin, pointing at X's hosted
ads MCP server (https://ads-api.x.com/mcp). Auth is per protected
resource: ads-api.x.com advertises its own OAuth metadata and scopes
(ads.read, ads.write), so it cannot share the X plugin's authorization
even though it reuses the same OAuth client ID.
Co-authored-by: Cursor <cursoragent@cursor.com>