Files
FabledScribe/plugin/skills/using-scribe/SKILL.md
T
bvandeusen 9924f873b9 feat(plugin): ship the Scribe Claude Code plugin in-repo (marketplace + plugin)
Per operator: the plugin lives in the app repo so it ships and versions in
lockstep with the app and the /api/plugin/context contract it targets (same
co-location rationale as the former in-repo MCP). A git-cloned marketplace
supports relative plugin sources, so the FabledScribe repo IS the marketplace.

- .claude-plugin/marketplace.json — source ./plugin
- plugin/.claude-plugin/plugin.json — userConfig (base URL, api key, project id)
- plugin/.mcp.json — http scribe server, ${user_config.*} substitution
- plugin/hooks/ — SessionStart push-channel hook (fail-open)
- plugin/skills/using-scribe — bootstrap skill
- plugin/README.md — install via the FabledScribe repo marketplace

Phase 2 of plan #755. Install/userConfig-substitution test pending.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-09 23:04:09 -04:00

44 lines
2.1 KiB
Markdown

---
name: using-scribe
description: Use at the start of any session and before answering questions about the operator's work or starting a task — establishes the Scribe-first reflex (recall before acting, load standing rules, update over duplicate, plan in Scribe not in files).
---
# Using Scribe
Scribe is the operator's self-hosted second brain (notes, tasks, projects,
milestones, events, typed entities) and rulebook, reachable through the bundled
`scribe` MCP server. Its value is mostly in what it **already holds** — so make
reading it a reflex, not something you wait to be asked for.
## The reflex
1. **Recall before acting.** Before answering a question about the operator's
work, or starting a task, `search` Scribe (and `list_tasks` / `list_notes`)
for prior art — an existing ticket, decision, or dev-log — instead of
re-deriving it or opening a duplicate. When a project is in scope, pass its
`project_id` so results stay scoped.
2. **Standing rules are binding.** The SessionStart context lists the operator's
always-on rule titles. Treat them as binding. Pull full text with
`list_always_on_rules()` or `get_rule(id)` when a rule is about to bite.
When a project is in scope, `enter_project(id)` also returns its applicable
rules.
3. **Update over duplicate.** When recording, prefer updating an existing
note/rule/task over creating a new one. Search first; revise what's there.
4. **Plans live in Scribe.** For non-trivial work call `start_planning(project_id,
title)` FIRST — the plan body + step checklist live in the `kind=plan` task,
progress goes in work-logs (`add_task_log`). Do not write plans/specs to local
`.md` files.
5. **Keep state honest.** Set a task `in_progress` when you start it, `done` the
moment it's complete; log progress as you go.
## Other Scribe process-skills
This plugin also ships focused process-skills — brainstorming, systematic
debugging, test-driven development, writing-plans, verification, receiving code
review. Reach for the matching one when its situation arises, the same way you
reach for this skill.