mirror of
https://github.com/garrytan/gbrain.git
synced 2026-07-27 22:15:33 +00:00
* feat(skillpack): brain_resident manifest fields + init-brain-pack scaffolder + tools version-skew lint Add optional brain_resident/schema_pack to the v1 manifest (additive, forward-compatible). New runInitBrainPack scaffolds a brain-resident pack (brain_resident:true, exact gbrain_min_version, 5-section machine-parseable README) beside brain content; applyWritePlan factored out of init-scaffold. brain-pack-lint validates each skill's declared tools: against the serving op set (E6 version-skew). Wires gbrain skillpack init-brain-pack. * feat(skillpack): Topology A brain-pack discovery on sources add + bounded nag After 'gbrain sources add', if the source ships a brain_resident pack, print an agent-readable advisory (ask the user before scaffolding). nag-state.ts tracks declines per (source-repo brain_id, source, pack) with escalate-then-suppress; declines count only on CLI-interactive displays, never cron/MCP. Fail-open: a malformed/absent pack never breaks sources add. * feat(advisor,skillpack): list_brain_skillpack MCP tool + gbrain advisor Topology B: dedicated source-scoped list_brain_skillpack op + get_skill source_id disambiguation (brain-resident-locate.ts); git scaffold-spec never a server FS path; source-aware schema match. LEARN_INSTRUCTION + serve-http banner. gbrain advisor: read-only ranked actions from brain state (8 resilient collectors, shared renderer, JSONL history, --json severity exit codes, local-only argv --apply dispatcher). Exposed over MCP behind mcp.publish_advisor (default off, read-only on remote; workspace collectors no-op remotely). Generalizes post-install-advisory to a single current-state recommended set (install→scaffold). * feat(skills): bundle gbrain-advisor skill + weekly cron recipe + ranking eval skills/gbrain-advisor teaches a harness to run gbrain advisor on a cadence and ping the user (read-only; ask before fixing). Registered in manifest.json, RESOLVER.md, openclaw.plugin.json. E4 ranking-precision eval on seeded-defect fixtures (100%). * chore: bump version and changelog (v0.42.47.0) Brain-resident skillpacks + gbrain advisor (#2180). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * docs: sync CLAUDE.md + KEY_FILES for brain-resident skillpacks + advisor (#2180) Skill count 29->30, Skills section gains the brain-resident skillpacks + advisor capability, KEY_FILES gets current-state entries for the new modules. Regenerate llms bundles. * test,fix: align stale assertions with generalized advisory + advisor resolver triggers (#2180) - post-install-advisory.test.ts: install→scaffold wording (the install verb was removed); restore two-column in book-mirror copy; drop the removed skillpack-list line. - RESOLVER.md: gbrain-advisor trigger now fuzzy-matches a declared frontmatter trigger (resolver round-trip D5/C). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * docs: regenerate llms bundle for updated advisor resolver row (#2180) --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
11 KiB
11 KiB
GBrain Skill Resolver
This is the dispatcher. Skills are the implementation. Read the skill file before acting. If two skills could match, read both. They are designed to chain (e.g., ingest then enrich for each entity).
Always-on (every message)
| Trigger | Skill |
|---|---|
| Every inbound message (spawn parallel, don't block) | skills/signal-detector/SKILL.md |
| Any brain read/write/lookup/citation | skills/brain-ops/SKILL.md |
Brain operations
| Trigger | Skill |
|---|---|
| "What do we know about", "tell me about", "search for", "who is", "background on", "notes on" | skills/query/SKILL.md |
| "Who knows who", "relationship between", "connections", "graph query" | skills/query/SKILL.md (use graph-query) |
| Creating/enriching a person or company page | skills/enrich/SKILL.md |
| Where does a new file go? Filing rules | skills/repo-architecture/SKILL.md |
| "where does this brain page go", "file this in the brain", "brain taxonomist", "taxonomy check", "refile brain page", "which directory does this page go" | skills/brain-taxonomist/SKILL.md |
| "EIIRP", "everything in its right place", "store this research", "put this in the brain", "make this re-doable", "DRY this up", "file all of this", "organize all of this work", "archive this research thread" | skills/eiirp/SKILL.md |
| Fix broken citations in brain pages | skills/citation-fixer/SKILL.md |
| "citation audit", "check citations", "fix citations" | skills/citation-fixer/SKILL.md (focused fix). For broader brain health, chain into skills/maintain/SKILL.md |
| "Research", "track", "extract from email", "investor updates", "donations" | skills/data-research/SKILL.md |
| Share a brain page as a link | skills/publish/SKILL.md |
| "validate frontmatter", "check frontmatter", "fix frontmatter", "frontmatter audit", "brain lint" | skills/frontmatter-guard/SKILL.md |
| "what search mode", "is my cache hot", "tune my retrieval", "compare search modes", "clear search overrides" | gbrain search modes/stats/tune directly. See skills/conventions/search-modes.md |
| "eval results", "search benchmark", "haters-immune methodology", "regression check on retrieval" | gbrain eval run-all / gbrain eval compare. See docs/eval/SEARCH_MODE_METHODOLOGY.md |
Content & media ingestion
| Trigger | Skill |
|---|---|
| "capture this", "save this thought", "remember this", "drop this in the inbox", "save to brain" | skills/capture/SKILL.md |
| User shares a link, article, tweet, or idea | skills/idea-ingest/SKILL.md |
| "watch this video", "process this YouTube link", "ingest this PDF", "save this podcast", "process this book", "summarize this book", "PDF book", "ingest it into my brain", "what's in this screenshot", "check out this repo" | skills/media-ingest/SKILL.md |
| Meeting transcript received | skills/meeting-ingestion/SKILL.md |
| Generic "ingest this" (auto-routes to above) | skills/ingest/SKILL.md |
Thinking skills (from GStack)
| Trigger | Skill |
|---|---|
| "Brainstorm", "I have an idea", "office hours" | GStack: office-hours |
| "Review this plan", "CEO review", "poke holes" | GStack: ceo-review |
| "Debug", "fix", "broken", "investigate" | GStack: investigate |
| "Retro", "what shipped", "retrospective" | GStack: retro |
These skills come from GStack. If GStack is installed, the agent reads them directly. If not, brain-only mode still works (brain skills function without thinking skills).
Operational
| Trigger | Skill |
|---|---|
| Task add/remove/complete/defer/review | skills/daily-task-manager/SKILL.md |
| Morning prep, meeting context, day planning | skills/daily-task-prep/SKILL.md |
| Daily briefing, "what's happening today" | skills/briefing/SKILL.md |
| Cron scheduling, quiet hours, job staggering | skills/cron-scheduler/SKILL.md |
| "get more out of gbrain", "is my brain set up right", "weekly brain checkup", "advise me on my brain", "gbrain advisor" | skills/gbrain-advisor/SKILL.md |
| Save or load reports | skills/reports/SKILL.md |
| "Create a skill", "improve this skill" | skills/skill-creator/SKILL.md |
| "Skillify this", "is this a skill?", "make this proper" | skills/skillify/SKILL.md |
| "Compress my resolver", "AGENTS.md too large", "RESOLVER.md too big", "functional area dispatcher", "shrink routing table" | skills/functional-area-resolver/SKILL.md |
| "Is gbrain healthy?", morning health check, skillpack-check | skills/skillpack-check/SKILL.md |
| "harvest this skill into gbrain", "publish this skill to gbrain", "lift this skill upstream", "share this skill with other gbrain clients", "promote my skill to gbrain" | skills/skillpack-harvest/SKILL.md |
| Post-restart health + auto-fix, "did the container restart break anything", smoke test | skills/smoke-test/SKILL.md |
| Cross-modal review, second opinion | skills/cross-modal-review/SKILL.md |
| "Validate skills", skill health check | skills/testing/SKILL.md |
| Webhook setup, external event processing | skills/webhook-transforms/SKILL.md |
| "Spawn agent", "background task", "parallel tasks", "steer agent", "pause/resume agent", "gbrain jobs submit", "submit a gbrain job", "submit a shell job", "shell job" | skills/minion-orchestrator/SKILL.md |
| "present options", "ask before proceeding", "choice gate", "user decision" | skills/ask-user/SKILL.md |
Setup & migration
| Trigger | Skill |
|---|---|
| "Set up GBrain", first boot | skills/setup/SKILL.md |
| "Now what?", "fill my brain", "cold start", "bootstrap", "import my data", "what should I import first" | skills/cold-start/SKILL.md |
| "Migrate from Obsidian/Notion/Logseq" | skills/migrate/SKILL.md |
| Brain health check, maintenance run | skills/maintain/SKILL.md |
| "Extract links", "build link graph", "populate timeline" | skills/maintain/SKILL.md (extraction sections) |
| "Run dream", "process today's session", "synthesize my conversations", "consolidate yesterday's conversations", "what patterns did you see", "did the dream cycle run" | skills/maintain/SKILL.md (dream cycle section) |
| "Brain health", "what features am I missing", "brain score" | Run gbrain features --json |
| "Set up autopilot", "run brain maintenance", "keep brain updated" | Run gbrain autopilot --install --repo ~/brain |
"Upgrade gbrain", "update gbrain", "gbrain update available", UPGRADE_AVAILABLE, "is gbrain up to date" |
skills/gbrain-upgrade/SKILL.md |
| Agent identity, "who am I", customize agent | skills/soul-audit/SKILL.md |
| "Populate links", "extract links", "backfill graph" | skills/maintain/SKILL.md (graph population phase) |
| "Populate timeline", "extract timeline entries" | skills/maintain/SKILL.md (graph population phase) |
Identity & access (always-on)
| Trigger | Skill |
|---|---|
| Non-owner sends a message | Check ACCESS_POLICY.md before responding |
| Agent needs to know its identity/vibe | Read SOUL.md |
| Agent needs user context | Read USER.md |
| Operational cadence (what to check and when) | Read HEARTBEAT.md |
Disambiguation rules
When multiple skills could match:
- Prefer the most specific skill (meeting-ingestion over ingest)
- If the user mentions a URL, route by content type (link → idea-ingest, video → media-ingest)
- If the user mentions a person/company, check if enrich or query fits better
- Chaining is explicit in each skill's Phases section
- When in doubt, ask the user (see
skills/ask-user/SKILL.mdfor the choice-gate pattern)
Conventions (cross-cutting)
These apply to ALL brain-writing skills:
skills/conventions/quality.md— citations, back-links, notability gateskills/conventions/brain-first.md— check brain before external APIsskills/conventions/brain-routing.md— which brain (DB) and which source (repo) to target; cross-brain federation is latent-space onlyskills/conventions/schema-evolution.md— when to add a type vs alias vs prefix (read beforeschema-author)skills/conventions/subagent-routing.md— when to use Minions vs inline workskills/ask-user/SKILL.md— choice-gate pattern for human input at decision pointsskills/_brain-filing-rules.md— where files goskills/_output-rules.md— output quality standards
Uncategorized
| Trigger | Skill |
|---|---|
| "personalized version of this book", "mirror this book", "two-column book analysis", "apply this book to my life", "how does this book apply to me" | skills/book-mirror/SKILL.md |
| "enrich this article", "enrich brain pages", "batch enrich", "make brain pages useful" | skills/article-enrichment/SKILL.md |
| "strategic reading", "read this through the lens of", "apply this to my problem", "what can I learn from this about", "extract a playbook from" | skills/strategic-reading/SKILL.md |
| "concept synthesis", "synthesize my concepts", "find patterns across my notes", "build my intellectual map", "trace idea evolution" | skills/concept-synthesis/SKILL.md |
| "idea lineage", "trace the lineage of this idea", "how my thinking about", "how has my thinking about", "what is my current version of", "show reversals in my thinking about", "where did this idea come from" | skills/idea-lineage/SKILL.md |
| "perplexity research", "what's new about", "current state of", "web research", "what changed about" | skills/perplexity-research/SKILL.md |
| "crawl my archive", "find gold in my archive", "archive crawler", "scan my dropbox for", "mine my old files for" | skills/archive-crawler/SKILL.md |
| "verify this academic claim", "check this study", "academic verify", "validate citation", "is this study real" | skills/academic-verify/SKILL.md |
| "make pdf from brain", "brain pdf", "convert brain page to pdf", "publish this page as pdf", "export brain page" | skills/brain-pdf/SKILL.md |
| "voice note", "ingest this voice memo", "transcribe and file", "voice note ingest", "save this audio note" | skills/voice-note-ingest/SKILL.md |
| "add a page type", "add a type to my schema", "schema author", "schema mutate", "schema pack add", "my brain has untyped pages", "propose new types from my corpus", "backfill page types", "evolve my schema", "researcher type", "make X an expert type" (dispatcher for: gbrain schema active/list/show/validate/graph/lint/stats/explain/use/downgrade/reload/init/fork/edit/diff/add-type/remove-type/update-type/add-alias/remove-alias/add-prefix/remove-prefix/add-link-type/remove-link-type/set-extractable/set-expert-routing/detect/suggest/review-candidates/review-orphans/sync) | skills/schema-author/SKILL.md |
| "unify my types", "migrate to gbrain-base-v2", "94 types to 14", "apply canonical taxonomy", "clean up my page types", "pack upgrade", "shrink type proliferation", "consolidate page types", "retype pages to canonical" (dispatcher for: gbrain onboard --check, gbrain onboard --check --explain, gbrain jobs submit unify-types, gbrain pages restore) | skills/schema-unify/SKILL.md |