byterover-cli 1.2.1 → 1.3.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.
Files changed (83) hide show
  1. package/README.md +71 -8
  2. package/dist/constants.d.ts +0 -5
  3. package/dist/constants.js +0 -5
  4. package/dist/core/domain/cipher/agent/agent-info.d.ts +17 -17
  5. package/dist/core/domain/cipher/llm/schemas.d.ts +14 -14
  6. package/dist/core/domain/cipher/session/session-metadata.d.ts +2 -2
  7. package/dist/core/domain/entities/agent.js +6 -6
  8. package/dist/core/domain/entities/connector-type.d.ts +2 -1
  9. package/dist/core/domain/entities/connector-type.js +2 -1
  10. package/dist/core/domain/transport/schemas.d.ts +66 -66
  11. package/dist/core/interfaces/connectors/i-connector.d.ts +2 -2
  12. package/dist/core/interfaces/i-file-service.d.ts +7 -0
  13. package/dist/infra/auth/oauth-service.d.ts +15 -0
  14. package/dist/infra/auth/oauth-service.js +38 -2
  15. package/dist/infra/cipher/agent/agent-schemas.d.ts +42 -42
  16. package/dist/infra/cipher/llm/context/context-manager.js +7 -9
  17. package/dist/infra/cipher/llm/internal-llm-service.d.ts +5 -1
  18. package/dist/infra/cipher/llm/internal-llm-service.js +57 -46
  19. package/dist/infra/cipher/system-prompt/contributor-schemas.d.ts +8 -8
  20. package/dist/infra/cipher/system-prompt/schemas.d.ts +5 -5
  21. package/dist/infra/connectors/connector-manager.js +2 -0
  22. package/dist/infra/connectors/hook/hook-connector.d.ts +1 -1
  23. package/dist/infra/connectors/hook/hook-connector.js +3 -3
  24. package/dist/infra/connectors/mcp/mcp-connector.d.ts +1 -1
  25. package/dist/infra/connectors/mcp/mcp-connector.js +4 -4
  26. package/dist/infra/connectors/rules/rules-connector.d.ts +1 -1
  27. package/dist/infra/connectors/rules/rules-connector.js +4 -4
  28. package/dist/infra/connectors/shared/template-service.js +4 -0
  29. package/dist/infra/connectors/skill/index.d.ts +1 -0
  30. package/dist/infra/connectors/skill/index.js +1 -0
  31. package/dist/infra/connectors/skill/skill-connector-config.d.ts +45 -0
  32. package/dist/infra/connectors/skill/skill-connector-config.js +26 -0
  33. package/dist/infra/connectors/skill/skill-connector.d.ts +39 -0
  34. package/dist/infra/connectors/skill/skill-connector.js +160 -0
  35. package/dist/infra/connectors/skill/skill-content-loader.d.ts +18 -0
  36. package/dist/infra/connectors/skill/skill-content-loader.js +33 -0
  37. package/dist/infra/file/fs-file-service.d.ts +7 -0
  38. package/dist/infra/file/fs-file-service.js +15 -1
  39. package/dist/infra/mcp/tools/task-result-waiter.js +8 -0
  40. package/dist/infra/process/agent-worker.js +30 -14
  41. package/dist/infra/process/task-queue-manager.d.ts +23 -34
  42. package/dist/infra/process/task-queue-manager.js +57 -118
  43. package/dist/infra/process/transport-handlers.js +1 -7
  44. package/dist/infra/repl/commands/connectors-command.js +1 -1
  45. package/dist/infra/usecase/connectors-use-case.js +8 -2
  46. package/dist/infra/usecase/init-use-case.js +1 -1
  47. package/dist/infra/usecase/reset-use-case.d.ts +1 -0
  48. package/dist/infra/usecase/reset-use-case.js +4 -1
  49. package/dist/{commands → oclif/commands}/curate.d.ts +1 -1
  50. package/dist/{commands → oclif/commands}/curate.js +6 -6
  51. package/dist/{commands → oclif/commands}/hook-prompt-submit.d.ts +1 -1
  52. package/dist/{commands → oclif/commands}/hook-prompt-submit.js +3 -3
  53. package/dist/{commands → oclif/commands}/main.js +10 -10
  54. package/dist/{commands → oclif/commands}/mcp.js +2 -2
  55. package/dist/{commands → oclif/commands}/query.d.ts +1 -1
  56. package/dist/{commands → oclif/commands}/query.js +6 -6
  57. package/dist/{commands → oclif/commands}/status.d.ts +1 -1
  58. package/dist/{commands → oclif/commands}/status.js +8 -8
  59. package/dist/{commands → oclif/commands}/watch.d.ts +3 -3
  60. package/dist/{commands → oclif/commands}/watch.js +6 -6
  61. package/dist/oclif/constants.d.ts +11 -0
  62. package/dist/oclif/constants.js +11 -0
  63. package/dist/{hooks → oclif/hooks}/prerun/validate-brv-config-version.d.ts +1 -1
  64. package/dist/{hooks → oclif/hooks}/prerun/validate-brv-config-version.js +2 -2
  65. package/dist/templates/skill/SKILL.md +91 -0
  66. package/dist/templates/skill/TROUBLESHOOTING.md +50 -0
  67. package/dist/templates/skill/WORKFLOWS.md +229 -0
  68. package/dist/utils/type-guards.d.ts +11 -0
  69. package/dist/utils/type-guards.js +13 -0
  70. package/oclif.manifest.json +8 -1
  71. package/package.json +9 -9
  72. package/dist/infra/process/constants.d.ts +0 -1
  73. package/dist/infra/process/constants.js +0 -1
  74. /package/dist/{commands → oclif/commands}/main.d.ts +0 -0
  75. /package/dist/{commands → oclif/commands}/mcp.d.ts +0 -0
  76. /package/dist/{hooks → oclif/hooks}/command_not_found/handle-invalid-commands.d.ts +0 -0
  77. /package/dist/{hooks → oclif/hooks}/command_not_found/handle-invalid-commands.js +0 -0
  78. /package/dist/{hooks → oclif/hooks}/error/clean-errors.d.ts +0 -0
  79. /package/dist/{hooks → oclif/hooks}/error/clean-errors.js +0 -0
  80. /package/dist/{hooks → oclif/hooks}/init/update-notifier.d.ts +0 -0
  81. /package/dist/{hooks → oclif/hooks}/init/update-notifier.js +0 -0
  82. /package/dist/{hooks → oclif/hooks}/init/welcome.d.ts +0 -0
  83. /package/dist/{hooks → oclif/hooks}/init/welcome.js +0 -0
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # ByteRover CLI
2
2
 
3
- Command-line interface for ByteRover, featuring an interactive REPL with a modern React/Ink terminal UI for managing your project's context tree and knowledge storage. Seamlessly integrate with 18+ AI coding agents including Claude Code, Cursor, Windsurf, GitHub Copilot, Cline, and more.
3
+ Command-line interface for ByteRover, featuring an interactive REPL with a modern React/Ink terminal UI for managing your project's context tree and knowledge storage. Seamlessly integrate with 18 AI coding agents via modern skill files, MCP tools, or rules-based integration—supports Claude Code, Cursor, Windsurf, GitHub Copilot, Cline, and 13 more.
4
4
 
5
5
  [![Version](https://img.shields.io/npm/v/byterover-cli.svg)](https://npmjs.org/package/byterover-cli)
6
6
  [![Downloads/week](https://img.shields.io/npm/dw/byterover-cli.svg)](https://npmjs.org/package/byterover-cli)
@@ -13,6 +13,7 @@ Command-line interface for ByteRover, featuring an interactive REPL with a moder
13
13
  * [Interactive REPL](#interactive-repl)
14
14
  * [Keyboard Shortcuts](#keyboard-shortcuts)
15
15
  * [What is Context Tree?](#what-is-context-tree)
16
+ * [Supported AI Agents](#supported-ai-agents)
16
17
  * [Slash Commands Reference](#slash-commands-reference)
17
18
  * [Authentication](#authentication)
18
19
  * [Configuration](#configuration)
@@ -79,6 +80,17 @@ This opens your browser to complete OAuth authentication. Your credentials are s
79
80
 
80
81
  Select a team and space from your available options, and ByteRover will set up your project's context tree.
81
82
 
83
+ ### 4. (Optional) Configure Agent Connectors
84
+
85
+ ```
86
+ /connectors
87
+ ```
88
+
89
+ ByteRover automatically configures the best connector for your installed agents:
90
+ - **Skill files** for Claude Code and Cursor (modern, discoverable)
91
+ - **MCP tools** for most other agents (universal protocol)
92
+ - Switch connector types anytime via `/connectors`
93
+
82
94
  You're now ready to use ByteRover! Try `/status` to see your project's current state.
83
95
 
84
96
  ## Interactive REPL
@@ -101,7 +113,9 @@ The terminal UI includes:
101
113
  - **Command Completion**: Type `/` to see available commands with auto-completion
102
114
  - **Activity Log**: Real-time task status and execution progress
103
115
  - **Streaming Output**: Live responses with markdown rendering (headings, lists, blockquotes, code blocks)
104
- - **File References**: Type `@` in curate mode to browse and attach files (supports PDF)
116
+ - **Reasoning Display**: View agent thinking process with streamed reasoning blocks
117
+ - **File References**: Type `@` in curate mode to browse and attach files
118
+ - **PDF Support**: Reference and extract text from PDF files using `@` (up to 100 pages)
105
119
  - **Dynamic Domains**: Automatically creates new knowledge domains as your context tree grows
106
120
  - **Session Persistence**: Sessions auto-resume after restart
107
121
  - **Expandable Views**: Press `Ctrl+O` to expand messages or logs to full-screen with vim-style navigation
@@ -140,7 +154,7 @@ The **Context Tree** is ByteRover's structured knowledge system that helps you a
140
154
  - **Organized Knowledge**: Structure your project knowledge by domain and topic
141
155
  - **Easy Retrieval**: Find relevant context quickly when you need it
142
156
  - **Persistent Memory**: Maintain project-specific knowledge across sessions
143
- - **Agent-Friendly**: Works seamlessly with 18+ AI coding agents (Claude Code, Cursor, Windsurf, GitHub Copilot, Cline, and more) via rules-based or hook-based integration
157
+ - **Agent-Friendly**: Works seamlessly with 18 AI coding agents (Claude Code, Cursor, Windsurf, GitHub Copilot, Cline, and 13 more) via skill files, MCP tools, hooks, or rules
144
158
  - **Cloud Sync**: Push and sync your context tree to ByteRover's cloud storage for backup and team collaboration
145
159
  - **Dynamic Domains**: Automatically creates new domains as your knowledge grows
146
160
 
@@ -151,6 +165,20 @@ The context tree organizes knowledge into:
151
165
  - **Topics**: Specific subjects within domains (e.g., Authentication, Components)
152
166
  - **Context Files**: Markdown files containing your actual knowledge
153
167
 
168
+ ## Supported AI Agents
169
+
170
+ ByteRover integrates with 18 AI coding agents:
171
+
172
+ **Skill Connector (Default):**
173
+ - Claude Code, Cursor
174
+
175
+ **MCP Connector (Default):**
176
+ - Amp, Augment Code, Cline, Gemini CLI, Github Copilot, Junie, Kilo Code, Kiro, Qoder, Qwen Code, Roo Code, Trae.ai, Warp, Windsurf, Zed (and Codex via global scope)
177
+
178
+ **All agents support rules-based integration as a universal fallback option.**
179
+
180
+ Use `/connectors` in the REPL to view, install, or switch connector types for your agents.
181
+
154
182
  ### Integrating with Coding Agents
155
183
 
156
184
  Use `/connectors` to manage integrations with your AI coding agents:
@@ -159,10 +187,17 @@ Use `/connectors` to manage integrations with your AI coding agents:
159
187
  /connectors
160
188
  ```
161
189
 
162
- ByteRover supports three connector types:
163
- - **Hook integration** (Claude Code): Direct injection via IDE settings for seamless integration
164
- - **Rules-based** (all agents): Generates agent-specific rule files (e.g., `CLAUDE.md`, `.cursorrules`) that instruct the agent how to read from and contribute to your context tree
165
- - **MCP integration** (Model Context Protocol): Exposes `brv-query` and `brv-curate` as MCP tools that AI agents can call directly
190
+ ByteRover supports four connector types:
191
+
192
+ 1. **Skill integration** (Claude Code, Cursor - default): Modern integration that writes 3 markdown files (SKILL.md, TROUBLESHOOTING.md, WORKFLOWS.md) to your agent's skills directory for easy discovery and guidance
193
+ 2. **MCP integration** (16 other agents - default): Exposes brv-query and brv-curate as Model Context Protocol tools that AI agents can call directly
194
+ 3. **Rules-based** (all agents): Generates agent-specific rule files (e.g., CLAUDE.md, .cursorrules) with instructions for using ByteRover
195
+ 4. **Hook integration** (Claude Code only - legacy): Direct injection via IDE settings, replaced by skill connector
196
+
197
+ **Defaults by agent:**
198
+ - Claude Code, Cursor: Skill connector
199
+ - All others (16 agents): MCP connector
200
+ - Rules: Available for all agents as fallback
166
201
 
167
202
  ## Slash Commands Reference
168
203
 
@@ -223,9 +258,19 @@ ByteRover supports three connector types:
223
258
 
224
259
  | Command | Description |
225
260
  |---------|-------------|
226
- | `/connectors` | Manage agent connectors (rules-based or hook integration) |
261
+ | `/connectors` | Manage agent connectors (skill, hook, mcp, or rules integration) |
227
262
  | `/reset [-y] [directory]` | Reset context tree to empty state |
228
263
 
264
+ **Connector types:**
265
+ - `skill`: Modern integration with markdown skill files (SKILL.md, TROUBLESHOOTING.md, WORKFLOWS.md)
266
+ - `mcp`: Model Context Protocol tools (brv-query, brv-curate)
267
+ - `hook`: Legacy IDE settings injection (Claude Code only)
268
+ - `rules`: Agent-specific rule files (universal fallback)
269
+
270
+ **Defaults:**
271
+ - Claude Code, Cursor: `skill`
272
+ - All others: `mcp`
273
+
229
274
  **Reset options:**
230
275
  - `-y, --yes`: Skip confirmation prompt
231
276
 
@@ -319,6 +364,24 @@ The context tree is stored in `.brv/context-tree/`:
319
364
 
320
365
  **Note**: When you run `/push`, your context tree is uploaded to ByteRover's cloud storage for version control and team collaboration.
321
366
 
367
+ ### Agent Connector Configuration
368
+
369
+ Connector configurations are stored based on type:
370
+
371
+ **Skill connectors** (Claude Code, Cursor):
372
+ - **Project-scoped**: `.claude/skills/byterover/`, `.cursor/skills/byterover/`
373
+ - **Global-scoped** (Codex): `~/.codex/skills/byterover/`
374
+ - Files: `SKILL.md`, `TROUBLESHOOTING.md`, `WORKFLOWS.md`
375
+
376
+ **Hook connectors** (Claude Code legacy):
377
+ - `.claude/settings.local.json` (project-scoped)
378
+
379
+ **MCP connectors**:
380
+ - Managed via MCP configuration files (JSON/TOML)
381
+
382
+ **Rules connectors**:
383
+ - `CLAUDE.md`, `.cursorrules`, `.windsurfrules`, etc. (varies by agent)
384
+
322
385
  ## Troubleshooting
323
386
 
324
387
  ### Session Logs
@@ -19,11 +19,6 @@ export declare const SNAPSHOT_FILE = ".snapshot.json";
19
19
  * This is ByteRover's internal branching mechanism, not Git branches.
20
20
  */
21
21
  export declare const DEFAULT_BRANCH = "main";
22
- /**
23
- * ByteRover documentation URL.
24
- * Used in CLI help output to direct users to online documentation.
25
- */
26
- export declare const DOCS_URL = "https://docs.byterover.dev";
27
22
  export declare const TRANSPORT_HOST = "127.0.0.1";
28
23
  export declare const TRANSPORT_REQUEST_TIMEOUT_MS = 10000;
29
24
  export declare const TRANSPORT_ROOM_TIMEOUT_MS = 2000;
package/dist/constants.js CHANGED
@@ -24,11 +24,6 @@ export const SNAPSHOT_FILE = '.snapshot.json';
24
24
  * This is ByteRover's internal branching mechanism, not Git branches.
25
25
  */
26
26
  export const DEFAULT_BRANCH = 'main';
27
- /**
28
- * ByteRover documentation URL.
29
- * Used in CLI help output to direct users to online documentation.
30
- */
31
- export const DOCS_URL = 'https://docs.byterover.dev';
32
27
  // Transport layer constants (optimized for localhost real-time)
33
28
  export const TRANSPORT_HOST = '127.0.0.1'; // Use hostname for better sandbox compatibility
34
29
  export const TRANSPORT_REQUEST_TIMEOUT_MS = 10_000; // 10s - most operations complete quickly
@@ -33,11 +33,11 @@ export declare const AgentPermissionSchema: z.ZodObject<{
33
33
  */
34
34
  edit: z.ZodDefault<z.ZodEnum<["allow", "deny", "ask"]>>;
35
35
  }, "strip", z.ZodTypeAny, {
36
- edit: "allow" | "deny" | "ask";
37
36
  bash: Record<string, "allow" | "deny" | "ask">;
37
+ edit: "allow" | "deny" | "ask";
38
38
  }, {
39
- edit?: "allow" | "deny" | "ask" | undefined;
40
39
  bash?: Record<string, "allow" | "deny" | "ask"> | undefined;
40
+ edit?: "allow" | "deny" | "ask" | undefined;
41
41
  }>;
42
42
  export type AgentPermission = z.infer<typeof AgentPermissionSchema>;
43
43
  /**
@@ -115,11 +115,11 @@ export declare const AgentInfoSchema: z.ZodObject<{
115
115
  */
116
116
  edit: z.ZodDefault<z.ZodEnum<["allow", "deny", "ask"]>>;
117
117
  }, "strip", z.ZodTypeAny, {
118
- edit: "allow" | "deny" | "ask";
119
118
  bash: Record<string, "allow" | "deny" | "ask">;
119
+ edit: "allow" | "deny" | "ask";
120
120
  }, {
121
- edit?: "allow" | "deny" | "ask" | undefined;
122
121
  bash?: Record<string, "allow" | "deny" | "ask"> | undefined;
122
+ edit?: "allow" | "deny" | "ask" | undefined;
123
123
  }>>;
124
124
  /**
125
125
  * Inline system prompt for this agent.
@@ -145,44 +145,44 @@ export declare const AgentInfoSchema: z.ZodObject<{
145
145
  */
146
146
  tools: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
147
147
  }, "strip", z.ZodTypeAny, {
148
- name: string;
149
148
  hidden: boolean;
150
149
  mode: "primary" | "subagent" | "all";
150
+ name: string;
151
151
  native: boolean;
152
152
  permission: {
153
- edit: "allow" | "deny" | "ask";
154
153
  bash: Record<string, "allow" | "deny" | "ask">;
154
+ edit: "allow" | "deny" | "ask";
155
155
  };
156
156
  tools: Record<string, boolean>;
157
- prompt?: string | undefined;
157
+ color?: string | undefined;
158
+ description?: string | undefined;
158
159
  maxIterations?: number | undefined;
159
160
  model?: {
160
161
  modelId: string;
161
162
  providerId?: string | undefined;
162
163
  } | undefined;
163
- description?: string | undefined;
164
- color?: string | undefined;
165
- temperature?: number | undefined;
164
+ prompt?: string | undefined;
166
165
  promptFile?: string | undefined;
166
+ temperature?: number | undefined;
167
167
  }, {
168
- name: string;
169
168
  mode: "primary" | "subagent" | "all";
170
- prompt?: string | undefined;
169
+ name: string;
170
+ color?: string | undefined;
171
+ description?: string | undefined;
172
+ hidden?: boolean | undefined;
171
173
  maxIterations?: number | undefined;
172
174
  model?: {
173
175
  modelId: string;
174
176
  providerId?: string | undefined;
175
177
  } | undefined;
176
- description?: string | undefined;
177
- hidden?: boolean | undefined;
178
- color?: string | undefined;
179
- temperature?: number | undefined;
180
178
  native?: boolean | undefined;
181
179
  permission?: {
182
- edit?: "allow" | "deny" | "ask" | undefined;
183
180
  bash?: Record<string, "allow" | "deny" | "ask"> | undefined;
181
+ edit?: "allow" | "deny" | "ask" | undefined;
184
182
  } | undefined;
183
+ prompt?: string | undefined;
185
184
  promptFile?: string | undefined;
185
+ temperature?: number | undefined;
186
186
  tools?: Record<string, boolean> | undefined;
187
187
  }>;
188
188
  /**
@@ -19,16 +19,16 @@ export declare const LLMConfigBaseSchema: z.ZodObject<{
19
19
  maxIterations: number;
20
20
  model: string;
21
21
  provider: "claude" | "gemini" | "openrouter";
22
- timeout?: number | undefined;
23
22
  temperature?: number | undefined;
23
+ timeout?: number | undefined;
24
24
  maxInputTokens?: number | undefined;
25
25
  maxOutputTokens?: number | undefined;
26
26
  }, {
27
27
  model: string;
28
28
  provider: "claude" | "gemini" | "openrouter";
29
- timeout?: number | undefined;
30
29
  maxIterations?: number | undefined;
31
30
  temperature?: number | undefined;
31
+ timeout?: number | undefined;
32
32
  maxInputTokens?: number | undefined;
33
33
  maxOutputTokens?: number | undefined;
34
34
  }>;
@@ -47,32 +47,32 @@ export declare const LLMConfigSchema: z.ZodEffects<z.ZodObject<{
47
47
  maxIterations: number;
48
48
  model: string;
49
49
  provider: "claude" | "gemini" | "openrouter";
50
- timeout?: number | undefined;
51
50
  temperature?: number | undefined;
51
+ timeout?: number | undefined;
52
52
  maxInputTokens?: number | undefined;
53
53
  maxOutputTokens?: number | undefined;
54
54
  }, {
55
55
  model: string;
56
56
  provider: "claude" | "gemini" | "openrouter";
57
- timeout?: number | undefined;
58
57
  maxIterations?: number | undefined;
59
58
  temperature?: number | undefined;
59
+ timeout?: number | undefined;
60
60
  maxInputTokens?: number | undefined;
61
61
  maxOutputTokens?: number | undefined;
62
62
  }>, {
63
63
  maxIterations: number;
64
64
  model: string;
65
65
  provider: "claude" | "gemini" | "openrouter";
66
- timeout?: number | undefined;
67
66
  temperature?: number | undefined;
67
+ timeout?: number | undefined;
68
68
  maxInputTokens?: number | undefined;
69
69
  maxOutputTokens?: number | undefined;
70
70
  }, {
71
71
  model: string;
72
72
  provider: "claude" | "gemini" | "openrouter";
73
- timeout?: number | undefined;
74
73
  maxIterations?: number | undefined;
75
74
  temperature?: number | undefined;
75
+ timeout?: number | undefined;
76
76
  maxInputTokens?: number | undefined;
77
77
  maxOutputTokens?: number | undefined;
78
78
  }>;
@@ -97,37 +97,37 @@ export declare const LLMUpdatesSchema: z.ZodEffects<z.ZodObject<{
97
97
  temperature: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
98
98
  timeout: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
99
99
  }, "strip", z.ZodTypeAny, {
100
- timeout?: number | undefined;
101
100
  maxIterations?: number | undefined;
102
101
  model?: string | undefined;
103
- provider?: "claude" | "gemini" | "openrouter" | undefined;
104
102
  temperature?: number | undefined;
103
+ timeout?: number | undefined;
105
104
  maxInputTokens?: number | undefined;
106
105
  maxOutputTokens?: number | undefined;
106
+ provider?: "claude" | "gemini" | "openrouter" | undefined;
107
107
  }, {
108
- timeout?: number | undefined;
109
108
  maxIterations?: number | undefined;
110
109
  model?: string | undefined;
111
- provider?: "claude" | "gemini" | "openrouter" | undefined;
112
110
  temperature?: number | undefined;
111
+ timeout?: number | undefined;
113
112
  maxInputTokens?: number | undefined;
114
113
  maxOutputTokens?: number | undefined;
114
+ provider?: "claude" | "gemini" | "openrouter" | undefined;
115
115
  }>, {
116
- timeout?: number | undefined;
117
116
  maxIterations?: number | undefined;
118
117
  model?: string | undefined;
119
- provider?: "claude" | "gemini" | "openrouter" | undefined;
120
118
  temperature?: number | undefined;
119
+ timeout?: number | undefined;
121
120
  maxInputTokens?: number | undefined;
122
121
  maxOutputTokens?: number | undefined;
122
+ provider?: "claude" | "gemini" | "openrouter" | undefined;
123
123
  }, {
124
- timeout?: number | undefined;
125
124
  maxIterations?: number | undefined;
126
125
  model?: string | undefined;
127
- provider?: "claude" | "gemini" | "openrouter" | undefined;
128
126
  temperature?: number | undefined;
127
+ timeout?: number | undefined;
129
128
  maxInputTokens?: number | undefined;
130
129
  maxOutputTokens?: number | undefined;
130
+ provider?: "claude" | "gemini" | "openrouter" | undefined;
131
131
  }>;
132
132
  /**
133
133
  * Input type for LLM updates.
@@ -88,13 +88,13 @@ export declare const ActiveSessionPointerSchema: z.ZodObject<{
88
88
  sessionId: z.ZodString;
89
89
  }, "strip", z.ZodTypeAny, {
90
90
  sessionId: string;
91
- pid: number;
92
91
  activatedAt: string;
92
+ pid: number;
93
93
  processToken?: string | undefined;
94
94
  }, {
95
95
  sessionId: string;
96
- pid: number;
97
96
  activatedAt: string;
97
+ pid: number;
98
98
  processToken?: string | undefined;
99
99
  }>;
100
100
  /**
@@ -35,8 +35,8 @@ export const AGENT_CONNECTOR_CONFIG = {
35
35
  supported: ['rules', 'mcp'],
36
36
  },
37
37
  'Claude Code': {
38
- default: 'hook',
39
- supported: ['rules', 'hook', 'mcp'],
38
+ default: 'skill',
39
+ supported: ['rules', 'hook', 'mcp', 'skill'],
40
40
  },
41
41
  Cline: {
42
42
  default: 'mcp',
@@ -44,11 +44,11 @@ export const AGENT_CONNECTOR_CONFIG = {
44
44
  },
45
45
  Codex: {
46
46
  default: 'mcp',
47
- supported: ['rules', 'mcp'],
47
+ supported: ['rules', 'mcp', 'skill'],
48
48
  },
49
49
  Cursor: {
50
- default: 'mcp',
51
- supported: ['rules', 'mcp'],
50
+ default: 'skill',
51
+ supported: ['rules', 'mcp', 'skill'],
52
52
  },
53
53
  'Gemini CLI': {
54
54
  default: 'mcp',
@@ -56,7 +56,7 @@ export const AGENT_CONNECTOR_CONFIG = {
56
56
  },
57
57
  'Github Copilot': {
58
58
  default: 'mcp',
59
- supported: ['rules', 'mcp'],
59
+ supported: ['rules', 'mcp', 'skill'],
60
60
  },
61
61
  Junie: {
62
62
  default: 'mcp',
@@ -5,6 +5,7 @@
5
5
  * - 'rules': Agent reads instructions from a rule file (e.g., CLAUDE.md)
6
6
  * - 'hook': Instructions are injected on each prompt via agent hooks
7
7
  * - 'mcp': Agent uses mcp tools to interact with brv
8
+ * - 'skill': Agent reads skill files from a project subdirectory
8
9
  */
9
- export declare const CONNECTOR_TYPES: readonly ["rules", "hook", "mcp"];
10
+ export declare const CONNECTOR_TYPES: readonly ["rules", "hook", "mcp", "skill"];
10
11
  export type ConnectorType = (typeof CONNECTOR_TYPES)[number];
@@ -5,5 +5,6 @@
5
5
  * - 'rules': Agent reads instructions from a rule file (e.g., CLAUDE.md)
6
6
  * - 'hook': Instructions are injected on each prompt via agent hooks
7
7
  * - 'mcp': Agent uses mcp tools to interact with brv
8
+ * - 'skill': Agent reads skill files from a project subdirectory
8
9
  */
9
- export const CONNECTOR_TYPES = ['rules', 'hook', 'mcp'];
10
+ export const CONNECTOR_TYPES = ['rules', 'hook', 'mcp', 'skill'];