mirror of
https://github.com/garrytan/gbrain.git
synced 2026-07-27 22:15:33 +00:00
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>
79 lines
1.9 KiB
JSON
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"
|
|
}
|
|
}
|
|
}
|