@jesonliu/lark-claudecode-bridge 0.3.1 → 0.5.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.
@@ -1 +1 @@
1
- {"version":3,"file":"triggers.js","sourceRoot":"","sources":["../../src/session/triggers.ts"],"names":[],"mappings":"AAIA,yDAAyD;AACzD,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;AAErF,SAAS,YAAY,CAAC,QAAgB,EAAE,IAAY,EAAE,IAAY;IAChE,OAAO,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,KAAgC;IAC7E,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACtB,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3C,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/B,IAAI,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;QAC1E,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC;QAClF,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,OAAO,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAChF,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,OAAO,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"triggers.js","sourceRoot":"","sources":["../../src/session/triggers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,yDAAyD;AACzD,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAS,qBAAqB,CAAC,CAAC;AAEjE,SAAS,YAAY,CAAC,QAAgB,EAAE,IAAY,EAAE,IAAY;IAChE,OAAO,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,KAAgC;IAC7E,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACtB,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3C,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/B,IAAI,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;QAC1E,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC;QAClF,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,OAAO,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAChF,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,OAAO,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1C,CAAC"}
package/dist/types.d.ts CHANGED
@@ -18,17 +18,17 @@ export interface FeishuAppConfig {
18
18
  defaultWorkspace?: string;
19
19
  /** 该 app 的并发上限(1-100),缺省用全局 concurrency */
20
20
  concurrency?: number;
21
- /** 可选人格补充,直通 SDK options.appendSystemPrompt */
21
+ /** 可选人格补充,直通 SDK options.appendSystemPrompt(多机器人差异化定位的主要手段) */
22
22
  appendSystemPrompt?: string;
23
- /** Claude Code 数据目录(会话存储/用户设置/插件,每个机器人一套):
24
- * apps 里新配置的 app 缺省 <CONFIG_DIR>/claude/<appId>;旧 feishu 迁移的 app 沿用系统默认 ~/.claude(保存量会话 resume)。
25
- * loadConfig/normalizeApps 保证总有值(显式配置或缺省推导),类型上必填 */
26
- claudeConfigDir: string;
27
- /** per-app 环境变量(如 ANTHROPIC_BASE_URL/ANTHROPIC_MODEL 凭证差异化),合并进 Claude Code 子进程环境 */
23
+ /** per-app 环境变量,合并进 Claude Code 子进程环境。
24
+ * 注意:本机 ~/.claude/settings.json env 块会被 CLI 自行应用且优先级更高,
25
+ * 此处适合放 settings.json 里没有的键;模型/认证等已在本机配置的无须重复配 */
28
26
  env?: Record<string, string>;
29
27
  /** 触发词映射:按数组顺序首个命中生效;不配置 = 行为零变化。match 以 / 开头=首 token 精确匹配,否则=关键词包含 */
30
28
  triggers?: TriggerRule[];
31
- /** 显式加载的本地插件目录列表(SDK 单次 query 不会展开斜杠命令,技能须经改写指令触发;插件目录须含 .claude-plugin/plugin.json) */
29
+ /** 显式加载的本地插件目录列表(插件目录须含 .claude-plugin/plugin.json)。
30
+ * 通常无须配置:~/.claude 已启用的 marketplace 插件由 plugin-discovery 自动加载;
31
+ * 显式配置用于开发期直指源码目录(同名时优先于自动发现) */
32
32
  plugins?: PluginRef[];
33
33
  }
34
34
  export interface Workspace {
@@ -36,7 +36,8 @@ export interface Workspace {
36
36
  path: string;
37
37
  }
38
38
  export interface BridgeConfig {
39
- /** 多飞书应用(多机器人):每 app 一条独立 WS 长连接 + 独立会话池 + 独立 Claude Code 实例 */
39
+ /** 多飞书应用(多机器人):每 app 一条独立 WS 长连接 + 独立会话池(sessions.<appId>.json)。
40
+ * 全部 app 共享本机 ~/.claude:模型设置/登录态/user MCP/skills/插件统一继承,仅会话池隔离 */
40
41
  apps: FeishuAppConfig[];
41
42
  workspaces: Workspace[];
42
43
  defaults: {
@@ -98,9 +99,34 @@ export interface ProgressEvent {
98
99
  content: string;
99
100
  ok?: boolean;
100
101
  }
102
+ /**
103
+ * SDK init(system/init) 消息提取的会话清单:本会话实际加载到的模型/技能/插件/MCP/斜杠命令。
104
+ * 供 /skills /plugins /mcp /model 命令渲染(实际加载了什么就显示什么,而非配置了什么)。
105
+ */
106
+ export interface SessionInventory {
107
+ model: string;
108
+ claudeCodeVersion: string;
109
+ skills: string[];
110
+ slashCommands: string[];
111
+ plugins: Array<{
112
+ name: string;
113
+ version?: string;
114
+ path: string;
115
+ }>;
116
+ mcpServers: Array<{
117
+ name: string;
118
+ status: string;
119
+ }>;
120
+ agents: string[];
121
+ /** 以下为 bridge 侧附加信息(非 SDK 字段) */
122
+ workspace: string;
123
+ loadedAt: string;
124
+ }
101
125
  export interface TaskOutcome {
102
126
  sessionId: string;
103
127
  finalText: string;
104
128
  producedFiles: string[];
105
129
  turns: number;
130
+ /** 本任务 init 消息提取的清单(SDK 每 query 只发一次 init;workspace/loadedAt 由 wiring 侧补齐) */
131
+ inventory?: Omit<SessionInventory, 'workspace' | 'loadedAt'>;
106
132
  }
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const VERSION = "0.3.0";
1
+ export declare const VERSION = "0.4.0";
package/dist/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  // 版本号单一来源:package.json / lcb version / smoke 测试均以此为准
2
- export const VERSION = '0.3.0';
2
+ export const VERSION = '0.4.0';
3
3
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jesonliu/lark-claudecode-bridge",
3
- "version": "0.3.1",
3
+ "version": "0.5.0",
4
4
  "description": "飞书 ↔ Claude Code 桥接器:卡片确认走长连接,免公网 IP",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {