CI & Build / Python lint (push) Successful in 3s
CI & Build / Plugin hooks (push) Successful in 13s
CI & Build / TypeScript typecheck (push) Successful in 55s
CI & Build / integration (push) Successful in 1m3s
CI & Build / Python tests (push) Failing after 1m25s
CI & Build / Build & push image (push) Skipped
Loading a procedure now also reaches the moment it is for. Loading the reporting procedure is a report; loading the release procedure is a delivery. - Bundled skills: each SKILL.md declares `metadata: moments:`. The same declaration ships as Skill defaults (BUNDLED_SKILL_MOMENTS), because the server never sees the plugin's files. test_skill_moments holds the two together and pins the plugin name that qualifies the skill. - Stored processes: `moments` on create_process and update_process, stored in the note's data and returned by get_process. A `scribe-proc-<slug>` load resolves its process through the sync manifest at load time. The moments are not copied into the stub, which would go stale mid-session. - reachable_tools lists the skill loader whenever anything is mounted, since a process's moments are known only when it loads. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
37 lines
1.5 KiB
Markdown
37 lines
1.5 KiB
Markdown
---
|
||
name: brainstorming
|
||
description: Use when exploring options or shaping a direction before committing — open up the solution space instead of jumping to the first idea. Triggers on "how should we approach X", "what are the options", weighing trade-offs, or any open-ended design question. Recall prior thinking first; capture the decision after.
|
||
metadata:
|
||
moments: work.plan
|
||
---
|
||
|
||
# Brainstorming
|
||
|
||
Widen before you narrow. The first idea is rarely the best; the goal is a few
|
||
real options and a reasoned choice — not a single path defended after the fact.
|
||
|
||
## Recall first
|
||
|
||
`search` Scribe before generating from scratch — a prior decision, note, or
|
||
brainstorm on this often already exists. Build on it instead of repeating it.
|
||
|
||
## Open up
|
||
|
||
- Generate a few genuinely *different* options, not variations of one. Include at
|
||
least one you don't initially favor.
|
||
- For each: the core idea, what it's good at, and its main cost or risk — briefly.
|
||
- Resist converging until the space is actually explored.
|
||
|
||
## Then choose
|
||
|
||
- Recommend one, and say *why* — the trade-off that decided it, not just the pick.
|
||
- Surface the 1–2 places you made an interpretive call, so the operator can
|
||
redirect before it's baked in.
|
||
|
||
## Capture the decision
|
||
|
||
When a direction is chosen, record it in Scribe (`create_note`, e.g. tag
|
||
`decision`): the choice, the alternatives weighed, and the reason. That's what
|
||
keeps the same question from being re-litigated later — and what a future
|
||
session reads to understand *why*, not just *what*.
|