Files
gbrain/openclaw.plugin.json
T
Garry TanandClaude Opus 4.7 b438a7c4dd v0.25.1 foundation: scaffolds + manifests + filing-doctrine update
Foundation commit for v0.25.1 skills wave (book-mirror flagship + 8 research
pairings). All content is scaffold-stage; subsequent commits port wintermute
SKILL.md content into pure gbrain idiom.

Version bumps:
- VERSION 0.24.0 -> 0.25.1
- package.json: version + engines.bun >= 1.3.10 (D14 PTY harness)
- openclaw.plugin.json inner version 0.19.0 -> 0.25.1
- bun.lock refreshed

9 skill scaffolds via `gbrain skillify scaffold` (frontmatter + RESOLVER row +
routing-eval seed): book-mirror, article-enrichment, strategic-reading,
concept-synthesis, perplexity-research, archive-crawler, academic-verify,
brain-pdf, voice-note-ingest. Stub .mjs scripts and stub .test.ts files
deleted; these are pure-markdown skills, not deterministic-script skills.
Real tests will return when src/commands/book-mirror.ts and the other
runtime pieces land.

skills/manifest.json + openclaw.plugin.json skills[]: 9 new entries
(codex T6 fix; required by test/skillpack-sync-guard.test.ts).

D13 filing-doctrine update:
- skills/_brain-filing-rules.md: carve out media/<format>/<slug> as a
  sanctioned exception for sui-generis synthesized output.
- skills/_brain-filing-rules.json: add media/books/ and media/articles/
  as `synthesis-output` kind, distinct from raw-ingest filing.
- skills/media-ingest/SKILL.md: refine anti-pattern callout to clarify
  that format-prefixed paths are anti-pattern for raw ingest only,
  sanctioned for one-of-one synthesis.

Privacy guard hardening (codex T7):
- scripts/check-privacy.sh: extended for /data/brain/ and
  /data/.openclaw/ wintermute-specific path patterns. 7 historical
  files allow-listed (frozen migrations, test fixtures, env-var
  fallbacks). PRIVACY OK passes.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-01 14:45:20 -07:00

79 lines
1.9 KiB
JSON

{
"name": "gbrain",
"version": "0.25.1",
"description": "Personal knowledge brain with Postgres + pgvector hybrid search",
"family": "bundle-plugin",
"configSchema": {
"database_url": {
"type": "string",
"required": true,
"description": "PostgreSQL connection URL (Supabase recommended)",
"uiHints": { "sensitive": true }
},
"openai_api_key": {
"type": "string",
"required": false,
"description": "OpenAI API key for embeddings (uses OPENAI_API_KEY env var if not set)",
"uiHints": { "sensitive": true }
}
},
"mcpServers": {
"gbrain": {
"command": "./bin/gbrain",
"args": ["serve"]
}
},
"skills": [
"skills/academic-verify",
"skills/archive-crawler",
"skills/article-enrichment",
"skills/book-mirror",
"skills/brain-ops",
"skills/brain-pdf",
"skills/briefing",
"skills/citation-fixer",
"skills/concept-synthesis",
"skills/cross-modal-review",
"skills/cron-scheduler",
"skills/daily-task-manager",
"skills/daily-task-prep",
"skills/data-research",
"skills/enrich",
"skills/idea-ingest",
"skills/ingest",
"skills/maintain",
"skills/media-ingest",
"skills/meeting-ingestion",
"skills/minion-orchestrator",
"skills/perplexity-research",
"skills/query",
"skills/reports",
"skills/repo-architecture",
"skills/signal-detector",
"skills/skill-creator",
"skills/skillify",
"skills/skillpack-check",
"skills/soul-audit",
"skills/strategic-reading",
"skills/testing",
"skills/voice-note-ingest",
"skills/webhook-transforms"
],
"shared_deps": [
"skills/conventions",
"skills/_brain-filing-rules.md",
"skills/_brain-filing-rules.json",
"skills/_output-rules.md"
],
"excluded_from_install": [
"skills/setup",
"skills/migrate",
"skills/publish"
],
"openclaw": {
"compat": {
"pluginApi": ">=2026.4.0"
}
}
}