nanoPencil 架构优化任务拆分计划

将 docs/架构优化.md 中的 7 个优先级依次拆解为 Todo 任务，按优先级顺序写入 Cursor 本地任务系统。

任务优先级与数量
P1 消除冗余、澄清命名（3 个子任务）
P2 Soul 迁移至扩展层（3 个子任务）
P3 AgentSession 职责拆分（4 个子任务）
P4 system-prompt 动态化（3 个子任务）
P5 export-html 迁移（2 个子任务）
P6 MCP 抽象化（3 个子任务）
P7 utils 归类（3 个子任务）

共 21 个任务。

任务与关键文件对照

P1-1  packages/nanosoul、packages/agent-soul → 废弃，保留 packages/soul
P1-2  pencil-mem-integration.ts → 重命名为 builtin-extensions.ts
P1-3  nanopencil-defaults.ts → 移除扩展路径相关职责

P2-1  core/soul-integration.ts → extensions/soul/index.ts（标准扩展）
P2-2  core/sdk.ts → 移除 Soul 初始化分支
P2-3  settings → disable-soul 开关改为控制扩展加载

P3-1  core/agent-session.ts → 抽取 CompactionCoordinator
P3-2  core/agent-session.ts → 抽取 ToolOrchestrator
P3-3  core/agent-session.ts → 抽取 ModelSwitcher
P3-4  core/agent-session.ts → 瘦身，只保留生命周期 + 对外 API

P4-1  core/tools/*.ts → 每个工具增加 guidance 字段
P4-2  core/system-prompt.ts → 改为动态聚合工具 guidance
P4-3  core/extensions/types.ts → ToolDefinition 增加 guidance 字段

P5-1  core/export-html/ → extensions/export-html/（改写为扩展）
P5-2  core/agent-session.ts → 移除 exportToHtml 方法

P6-1  core/ → 新建 ToolSource 接口定义
P6-2  core/mcp/ → 实现 ToolSource 接口
P6-3  core/sdk.ts → 通过 ToolSource 统一注册工具

P7-1  utils/shell, sleep, tools-manager → core/utils/
P7-2  utils/clipboard*, image* → modes/utils/
P7-3  utils/mime, frontmatter → 保留在 utils/