brainclaw 0.27.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -66,6 +66,8 @@ If you are documenting or integrating an agent workflow, treat MCP as the primar
66
66
 
67
67
  brainclaw is designed to sit alongside the coding agents teams are already using, not behind a separate hosted control plane.
68
68
 
69
+ ### Code Agents
70
+
69
71
  | Logo | Agent | Integration | What brainclaw configures |
70
72
  |---|---|---|---|
71
73
  | [![Claude Code](https://img.shields.io/badge/Claude_Code-111111?logo=anthropic&logoColor=white)](https://github.com/anthropics/claude-code) | **[Claude Code](https://github.com/anthropics/claude-code)** | Full | MCP + CLAUDE.md + hooks + permissions + /brainclaw command |
@@ -78,10 +80,21 @@ brainclaw is designed to sit alongside the coding agents teams are already using
78
80
  | [![Continue](https://img.shields.io/badge/Continue-2563EB?logoColor=white)](https://github.com/continuedev/continue) | **[Continue](https://github.com/continuedev/continue)** | Standard | MCP + .continue/rules/ |
79
81
  | [![Gemini CLI](https://img.shields.io/badge/Gemini_CLI-1A73E8?logo=googlegemini&logoColor=white)](https://github.com/google-gemini/gemini-cli) | **[Antigravity / Gemini CLI](https://github.com/google-gemini/gemini-cli)** | Standard | MCP + GEMINI.md |
80
82
  | [![GitHub Copilot](https://img.shields.io/badge/GitHub_Copilot-181717?logo=githubcopilot&logoColor=white)](https://github.com/features/copilot) | **[GitHub Copilot](https://github.com/features/copilot)** | Limited | copilot-instructions.md + brainclaw-context skill |
81
- | [![OpenClaw](https://img.shields.io/badge/OpenClaw-FF6B35?logoColor=white)](https://github.com/openclaw/openclaw) | **[OpenClaw](https://github.com/openclaw/openclaw)** | Limited | brainclaw skill (SKILL.md) for structured project memory |
82
83
 
83
84
  **Full** = MCP + hooks + auto-approve (context injected every prompt). **Standard** = MCP + instruction file (agent must call tools explicitly). **Limited** = skill-based (agent calls brainclaw CLI via skill instructions).
84
85
 
86
+ ### Autonomous Agents
87
+
88
+ | Logo | Agent | Workflow | What brainclaw configures |
89
+ |---|---|---|---|
90
+ | [![OpenClaw](https://img.shields.io/badge/OpenClaw-FF6B35?logoColor=white)](https://github.com/openclaw/openclaw) | **[OpenClaw](https://github.com/openclaw/openclaw)** | Task-based | brainclaw skill (SKILL.md) for structured project memory |
91
+ | [![NanoClaw](https://img.shields.io/badge/NanoClaw-4A90D9?logoColor=white)](https://github.com/qwibitai/nanoclaw) | **[NanoClaw](https://github.com/qwibitai/nanoclaw)** | Task-based | brainclaw skill — messaging agent (WhatsApp, Telegram, Slack) |
92
+ | [![NemoClaw](https://img.shields.io/badge/NemoClaw-76B900?logo=nvidia&logoColor=white)](https://github.com/NVIDIA/NemoClaw) | **[NemoClaw](https://github.com/NVIDIA/NemoClaw)** | Task-based | brainclaw skill — NVIDIA enterprise agent stack |
93
+ | [![PicoClaw](https://img.shields.io/badge/PicoClaw-00ADD8?logo=go&logoColor=white)](https://github.com/sipeed/picoclaw) | **[PicoClaw](https://github.com/sipeed/picoclaw)** | Scheduled | brainclaw skill — edge/IoT agent (Go, <10MB RAM) |
94
+ | [![ZeroClaw](https://img.shields.io/badge/ZeroClaw-B7410E?logoColor=white)](https://github.com/zeroclaw-labs/zeroclaw) | **[ZeroClaw](https://github.com/zeroclaw-labs/zeroclaw)** | Task-based | brainclaw skill — ultra-lightweight Rust agent (20+ channels) |
95
+
96
+ Autonomous agents use brainclaw via CLI skills with `--profile compact` for short sessions and constrained resources.
97
+
85
98
  brainclaw is most effective today when one agent works at a time in a given checkout and the next agent resumes from shared context, claims, and handoffs.
86
99
 
87
100
  ---
@@ -9,137 +9,82 @@
9
9
  * C (limited) — no MCP → rich static content (plans, traps, decisions)
10
10
  */
11
11
  const PROFILES = {
12
+ // --- Code agents (interactive, IDE-driven) ---
12
13
  'claude-code': {
13
- name: 'claude-code',
14
- hasMcp: true,
15
- hasHooks: true,
16
- hasAutoApprove: true,
17
- hasSkills: true,
18
- hasRules: true,
19
- instructionFile: 'CLAUDE.md',
20
- sharedInstructionFile: true,
21
- mcpConfigScope: 'both',
22
- templateTier: 'A',
14
+ name: 'claude-code', category: 'code-agent', workflowModel: 'interactive',
15
+ hasMcp: true, hasHooks: true, hasAutoApprove: true, hasSkills: true, hasRules: true,
16
+ instructionFile: 'CLAUDE.md', sharedInstructionFile: true, mcpConfigScope: 'both', templateTier: 'A',
23
17
  },
24
18
  cursor: {
25
- name: 'cursor',
26
- hasMcp: true,
27
- hasHooks: false,
28
- hasAutoApprove: false,
29
- hasSkills: false,
30
- hasRules: true,
31
- instructionFile: '.cursor/rules/brainclaw.md',
32
- sharedInstructionFile: false,
33
- mcpConfigScope: 'machine',
34
- templateTier: 'B',
19
+ name: 'cursor', category: 'code-agent', workflowModel: 'interactive',
20
+ hasMcp: true, hasHooks: false, hasAutoApprove: false, hasSkills: false, hasRules: true,
21
+ instructionFile: '.cursor/rules/brainclaw.md', sharedInstructionFile: false, mcpConfigScope: 'machine', templateTier: 'B',
35
22
  },
36
23
  windsurf: {
37
- name: 'windsurf',
38
- hasMcp: true,
39
- hasHooks: false,
40
- hasAutoApprove: false,
41
- hasSkills: false,
42
- hasRules: true,
43
- instructionFile: '.windsurfrules',
44
- sharedInstructionFile: true,
45
- mcpConfigScope: 'machine',
46
- templateTier: 'B',
24
+ name: 'windsurf', category: 'code-agent', workflowModel: 'interactive',
25
+ hasMcp: true, hasHooks: false, hasAutoApprove: false, hasSkills: false, hasRules: true,
26
+ instructionFile: '.windsurfrules', sharedInstructionFile: true, mcpConfigScope: 'machine', templateTier: 'B',
47
27
  },
48
28
  cline: {
49
- name: 'cline',
50
- hasMcp: true,
51
- hasHooks: false,
52
- hasAutoApprove: true,
53
- hasSkills: false,
54
- hasRules: true,
55
- instructionFile: '.clinerules/brainclaw.md',
56
- sharedInstructionFile: false,
57
- mcpConfigScope: 'project',
58
- templateTier: 'B',
29
+ name: 'cline', category: 'code-agent', workflowModel: 'interactive',
30
+ hasMcp: true, hasHooks: false, hasAutoApprove: true, hasSkills: false, hasRules: true,
31
+ instructionFile: '.clinerules/brainclaw.md', sharedInstructionFile: false, mcpConfigScope: 'project', templateTier: 'B',
59
32
  },
60
33
  roo: {
61
- name: 'roo',
62
- hasMcp: true,
63
- hasHooks: false,
64
- hasAutoApprove: true,
65
- hasSkills: false,
66
- hasRules: true,
67
- instructionFile: '.roo/rules/brainclaw.md',
68
- sharedInstructionFile: false,
69
- mcpConfigScope: 'project',
70
- templateTier: 'B',
34
+ name: 'roo', category: 'code-agent', workflowModel: 'interactive',
35
+ hasMcp: true, hasHooks: false, hasAutoApprove: true, hasSkills: false, hasRules: true,
36
+ instructionFile: '.roo/rules/brainclaw.md', sharedInstructionFile: false, mcpConfigScope: 'project', templateTier: 'B',
71
37
  },
72
38
  continue: {
73
- name: 'continue',
74
- hasMcp: true,
75
- hasHooks: false,
76
- hasAutoApprove: false,
77
- hasSkills: false,
78
- hasRules: true,
79
- instructionFile: '.continue/rules/brainclaw.md',
80
- sharedInstructionFile: false,
81
- mcpConfigScope: 'both',
82
- templateTier: 'B',
39
+ name: 'continue', category: 'code-agent', workflowModel: 'interactive',
40
+ hasMcp: true, hasHooks: false, hasAutoApprove: false, hasSkills: false, hasRules: true,
41
+ instructionFile: '.continue/rules/brainclaw.md', sharedInstructionFile: false, mcpConfigScope: 'both', templateTier: 'B',
83
42
  },
84
43
  opencode: {
85
- name: 'opencode',
86
- hasMcp: true,
87
- hasHooks: false,
88
- hasAutoApprove: false,
89
- hasSkills: false,
90
- hasRules: true,
91
- instructionFile: 'AGENTS.md',
92
- sharedInstructionFile: true,
93
- mcpConfigScope: 'project',
94
- templateTier: 'B',
44
+ name: 'opencode', category: 'code-agent', workflowModel: 'interactive',
45
+ hasMcp: true, hasHooks: false, hasAutoApprove: false, hasSkills: false, hasRules: true,
46
+ instructionFile: 'AGENTS.md', sharedInstructionFile: true, mcpConfigScope: 'project', templateTier: 'B',
95
47
  },
96
48
  codex: {
97
- name: 'codex',
98
- hasMcp: true,
99
- hasHooks: false,
100
- hasAutoApprove: false,
101
- hasSkills: false,
102
- hasRules: true,
103
- instructionFile: 'AGENTS.md',
104
- sharedInstructionFile: true,
105
- mcpConfigScope: 'machine',
106
- templateTier: 'B',
49
+ name: 'codex', category: 'code-agent', workflowModel: 'task-based',
50
+ hasMcp: true, hasHooks: false, hasAutoApprove: false, hasSkills: false, hasRules: true,
51
+ instructionFile: 'AGENTS.md', sharedInstructionFile: true, mcpConfigScope: 'machine', templateTier: 'B',
107
52
  },
108
53
  antigravity: {
109
- name: 'antigravity',
110
- hasMcp: true,
111
- hasHooks: false,
112
- hasAutoApprove: false,
113
- hasSkills: false,
114
- hasRules: true,
115
- instructionFile: 'GEMINI.md',
116
- sharedInstructionFile: true,
117
- mcpConfigScope: 'machine',
118
- templateTier: 'B',
54
+ name: 'antigravity', category: 'code-agent', workflowModel: 'interactive',
55
+ hasMcp: true, hasHooks: false, hasAutoApprove: false, hasSkills: false, hasRules: true,
56
+ instructionFile: 'GEMINI.md', sharedInstructionFile: true, mcpConfigScope: 'machine', templateTier: 'B',
119
57
  },
120
58
  'github-copilot': {
121
- name: 'github-copilot',
122
- hasMcp: false,
123
- hasHooks: false,
124
- hasAutoApprove: false,
125
- hasSkills: true,
126
- hasRules: true,
127
- instructionFile: '.github/copilot-instructions.md',
128
- sharedInstructionFile: true,
129
- mcpConfigScope: 'none',
130
- templateTier: 'C',
59
+ name: 'github-copilot', category: 'code-agent', workflowModel: 'interactive',
60
+ hasMcp: false, hasHooks: false, hasAutoApprove: false, hasSkills: true, hasRules: true,
61
+ instructionFile: '.github/copilot-instructions.md', sharedInstructionFile: true, mcpConfigScope: 'none', templateTier: 'C',
131
62
  },
63
+ // --- Autonomous agents (headless, task-based or scheduled) ---
132
64
  openclaw: {
133
- name: 'openclaw',
134
- hasMcp: false,
135
- hasHooks: false,
136
- hasAutoApprove: false,
137
- hasSkills: true,
138
- hasRules: false,
139
- instructionFile: 'skills/openclaw/SKILL.md',
140
- sharedInstructionFile: false,
141
- mcpConfigScope: 'none',
142
- templateTier: 'C',
65
+ name: 'openclaw', category: 'autonomous-agent', workflowModel: 'task-based',
66
+ hasMcp: false, hasHooks: false, hasAutoApprove: false, hasSkills: true, hasRules: false,
67
+ instructionFile: 'skills/openclaw/SKILL.md', sharedInstructionFile: false, mcpConfigScope: 'none', templateTier: 'C',
68
+ },
69
+ nanoclaw: {
70
+ name: 'nanoclaw', category: 'autonomous-agent', workflowModel: 'task-based',
71
+ hasMcp: false, hasHooks: false, hasAutoApprove: false, hasSkills: true, hasRules: false,
72
+ instructionFile: 'skills/nanoclaw/SKILL.md', sharedInstructionFile: false, mcpConfigScope: 'none', templateTier: 'C',
73
+ },
74
+ nemoclaw: {
75
+ name: 'nemoclaw', category: 'autonomous-agent', workflowModel: 'task-based',
76
+ hasMcp: false, hasHooks: false, hasAutoApprove: false, hasSkills: true, hasRules: false,
77
+ instructionFile: 'skills/nemoclaw/SKILL.md', sharedInstructionFile: false, mcpConfigScope: 'none', templateTier: 'C',
78
+ },
79
+ picoclaw: {
80
+ name: 'picoclaw', category: 'autonomous-agent', workflowModel: 'scheduled',
81
+ hasMcp: false, hasHooks: false, hasAutoApprove: false, hasSkills: true, hasRules: false,
82
+ instructionFile: 'skills/picoclaw/SKILL.md', sharedInstructionFile: false, mcpConfigScope: 'none', templateTier: 'C',
83
+ },
84
+ zeroclaw: {
85
+ name: 'zeroclaw', category: 'autonomous-agent', workflowModel: 'task-based',
86
+ hasMcp: false, hasHooks: false, hasAutoApprove: false, hasSkills: true, hasRules: false,
87
+ instructionFile: 'skills/zeroclaw/SKILL.md', sharedInstructionFile: false, mcpConfigScope: 'none', templateTier: 'C',
143
88
  },
144
89
  };
145
90
  /**
@@ -12,6 +12,11 @@ const SUPPORTED_AGENT_INTEGRATION_NAMES = new Set([
12
12
  'antigravity',
13
13
  'continue',
14
14
  'roo',
15
+ 'openclaw',
16
+ 'nanoclaw',
17
+ 'nemoclaw',
18
+ 'picoclaw',
19
+ 'zeroclaw',
15
20
  ]);
16
21
  const DEFAULT_SURFACES = {
17
22
  'github-copilot': [
@@ -60,6 +65,18 @@ const DEFAULT_SURFACES = {
60
65
  'openclaw': [
61
66
  { kind: 'skill', location: 'machine', path: '.openclaw/workspace/skills/brainclaw/SKILL.md' },
62
67
  ],
68
+ 'nanoclaw': [
69
+ { kind: 'skill', location: 'workspace', path: 'skills/nanoclaw/SKILL.md' },
70
+ ],
71
+ 'nemoclaw': [
72
+ { kind: 'skill', location: 'workspace', path: 'skills/nemoclaw/SKILL.md' },
73
+ ],
74
+ 'picoclaw': [
75
+ { kind: 'skill', location: 'workspace', path: 'skills/picoclaw/SKILL.md' },
76
+ ],
77
+ 'zeroclaw': [
78
+ { kind: 'skill', location: 'workspace', path: 'skills/zeroclaw/SKILL.md' },
79
+ ],
63
80
  };
64
81
  function mergeSurfaces(current, next) {
65
82
  const merged = [...current];
@@ -418,7 +418,7 @@ export const ProjectModeSchema = z.enum(['single-project', 'multi-project', 'aut
418
418
  export const ProjectStrategySchema = z.enum(['manual', 'folder']);
419
419
  export const TopologyModeSchema = z.enum(['embedded', 'sidecar', 'local-only']);
420
420
  export const IgnoreStrategySchema = z.enum(['project-gitignore', 'none']);
421
- export const AgentKindSchema = z.enum(['agent', 'human', 'unknown']);
421
+ export const AgentKindSchema = z.enum(['agent', 'autonomous', 'human', 'unknown']);
422
422
  export const AgentTrustLevelSchema = z.enum(['observer', 'contributor', 'trusted', 'curator']);
423
423
  export const AgentIdentityKeySchema = z.object({
424
424
  algorithm: z.literal('ed25519'),
@@ -638,6 +638,10 @@ export const AgentIntegrationNameSchema = z.enum([
638
638
  'continue',
639
639
  'roo',
640
640
  'openclaw',
641
+ 'nanoclaw',
642
+ 'nemoclaw',
643
+ 'picoclaw',
644
+ 'zeroclaw',
641
645
  ]);
642
646
  export const AgentIntegrationSurfaceKindSchema = z.enum(['instructions', 'mcp', 'skill', 'rule', 'hook']);
643
647
  export const AgentIntegrationLocationSchema = z.enum(['workspace', 'machine']);
@@ -44,14 +44,21 @@ More directive:
44
44
  - The top 5 most critical traps (the agent won't see them otherwise)
45
45
  - Explicit step-by-step protocol with all MCP calls listed
46
46
 
47
- ### For agents without MCP (Copilot)
47
+ ### For agents without MCP (Copilot, autonomous agents)
48
48
 
49
- Full static context:
49
+ Full static context via instruction file or SKILL.md:
50
50
  - All of the above
51
51
  - Active plans with status and assignees
52
52
  - All shared traps
53
53
  - Recent architectural decisions
54
54
 
55
+ ### For autonomous agents (OpenClaw, NanoClaw, NemoClaw, PicoClaw, ZeroClaw)
56
+
57
+ Skill-based integration via `skills/<agent>/SKILL.md`:
58
+ - Compact brainclaw usage instructions adapted to the agent's workflow
59
+ - Uses `--profile compact` by default (short sessions, constrained resources)
60
+ - Supports task-based and scheduled workflow models
61
+
55
62
  ## Setting up agent integration
56
63
 
57
64
  ### Automatic (recommended)
@@ -83,7 +90,7 @@ brainclaw export --detect --write # auto-detect and write all formats
83
90
  When brainclaw memory changes (new constraints, resolved traps, updated plans), regenerate instruction files:
84
91
 
85
92
  ```bash
86
- brainclaw export --all # all 9 agent formats at once
93
+ brainclaw export --all # all 15 agent formats at once
87
94
  brainclaw export --detect --write # only the detected agent
88
95
  ```
89
96
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "brainclaw",
3
- "version": "0.27.0",
3
+ "version": "0.28.0",
4
4
  "description": "Shared project memory for humans and coding agents.",
5
5
  "type": "module",
6
6
  "bin": {