
Security News
PHP Foundation Says Chainguard Broke Security Embargo Ahead of Emergency Patches
The PHP Foundation says Chainguard broke a security embargo ahead of critical RCE patches, as leaks disrupted the coordinated release.
@cjhyy/code-shell-pet
Advanced tools
Pet (top-level personal assistant) capability for CodeShell — projection state machine, DelegateWork contract, Mimi behavior profile.
CodeShell 的 Mimi(项目工作状态助理 / 桌面 Pet)领域能力包。它只依赖
@cjhyy/code-shell-core/extension,由宿主显式加载,不把 Pet 字面量和产品规则重新写回
core。
Mimi 与普通 Work Session 的职责不同:
因此 Pet 包只拥有可跨宿主复用的领域规则和投影协议。Electron 窗口、React 组件、磁盘目录
扫描等宿主能力留在 packages/desktop;通用引擎、工具系统和协议生命周期留在
packages/core。
| 模块 | 职责 |
|---|---|
capability.ts | 唯一组合根:注册行为 profile、DelegateWork、投影 observer 和参数校验 |
profile.ts | Mimi 的系统边界、允许工具和单轮委托服务 |
delegation.ts / delegate-work.ts | Workspace、可复用 Session 与结构化委托工具 |
run-params.ts | 宿主输入的有界校验、规范化和 fail-closed 快照 |
gateway.ts / host-actions.ts | 渠道只读发现与当前会话回复,不接收任意 target |
outbound-message.ts | 使用宿主不透明目标的主动消息请求;工具接受不等于发送成功 |
follow-ups.ts | 读取/处理 Desktop 同一份“需要跟进”,不建立第二套 Todo |
sessions-tool.ts / session-control.ts | Session 渐进读取与精确归档选择器 |
current-time.ts | 宿主时间原子能力,不让 Mimi 猜 epoch 或调用 shell |
team.ts | 历史兼容的数字人团队纯数据契约;Pet runtime 不消费 |
session-index.ts | Work Session 的纯状态机与安全摘要 |
pending-decision-index.ts | 跨 Session 待决策读模型,不持有 resolver 或原始问题正文 |
projection-extension.ts | 把 core 的通用生命周期事件投影为 Pet snapshot/delta |
protocol.ts / types.ts | Pet 专属 wire shape 和领域类型 |
long-task.ts | 长程任务状态机、事件协议、恢复提示和有界经理上下文 |
这种拆分让状态机、输入边界和协议适配可以分别测试,也让 Desktop 以后更换呈现方式时不必改 Mimi 的安全规则。
Pet 保持为一个 npm 包,不把 projection 和能力工厂继续拆成多个独立发布单元。新代码 应按职责使用两个最小子入口:
import { createPetCapability } from "@cjhyy/code-shell-pet/capability";
import {
PET_PROJECTION_DELTA_METHOD,
type PetProjectionDelta,
type PetProjectionSnapshotResult,
} from "@cjhyy/code-shell-pet/protocol";
| 入口 | 稳定职责 | 不包含 |
|---|---|---|
@cjhyy/code-shell-pet/capability | 宿主组合用的 createPetCapability | prompt、工具实现、状态机 |
@cjhyy/code-shell-pet/protocol | snapshot/delta 方法名和投影 wire types | SessionIndex、pending 状态机、observer 实现 |
@cjhyy/code-shell-pet/team | 仅历史兼容;新消费方应使用 Desktop 共享契约 | Pet runtime 或 core 扩展逻辑 |
根入口 @cjhyy/code-shell-pet 为现有 Desktop 和动态 capability loader 保持兼容;它不会被
移除,但新消费方不应为了一个协议类型或团队 parser 依赖整个兼容 barrel。包不提供通配
deep import,未列出的源码模块均为内部实现。
DelegateWork。pet Session 不得出现在普通 Work Session 列表或待决策列表。DelegateWork 的启动回执不等于完成;只有真实 Work Session 终态才能关闭长程任务。GatewayReply、SendMessage 和其他宿主动作只登记请求;成功/失败措辞只能来自宿主执行回执。long-task.ts 只定义可移植的领域状态机。Desktop 当前负责把它接到真实运行时:
pet/long-tasks.json,再启动 Work Session;goal_progress(met/exhausted) 终态,Pet projection 提供待审批/断线状态;interrupted,用户可从原 Session 恢复;longTasks 摘要,不回灌完整 transcript 或工具参数。bun test packages/pet/src
bun run --cwd packages/pet build
bunx eslint packages/pet/src --max-warnings=0
build 会先清空 dist/,避免删除或重命名源码后把陈旧产物发布出去。
engine.chat-replay.test.ts 用脚本替换 LLM,保留真实 Engine 历史、Sessions/FollowUps
读取、委托校验和宿主请求记录,回放多轮续聊、错误项目纠正、列表参数纠正、重复错误上限,
以及报时转发、记忆、远程遥控和会话完成通知等历史输入。
这类测试不连接微信或真实模型,也不执行宿主副作用;它验证接线与状态契约,不能代替真实
模型的语言理解评估。修改 core 后先构建 core,因为这些集成测试从公开包入口加载它。
FAQs
Pet (top-level personal assistant) capability for CodeShell — projection state machine, DelegateWork contract, Mimi behavior profile.
We found that @cjhyy/code-shell-pet demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
The PHP Foundation says Chainguard broke a security embargo ahead of critical RCE patches, as leaks disrupted the coordinated release.

Security News
PHP releases emergency patches for two critical RCE vulnerabilities as agencies urge organizations to take unpatched sites offline.

Threat Research
/Security News
A supply chain attack compromised LiteLLM 1.107.0 on PyPI and Docker, spreading malware that steals cloud credentials, developer secrets, and AI provider keys.