Garfield Lee
cf6ff23f7c
refactor(core-agent): move spark-command agent from stage-ui to core-agent (#2528)
## Summary
Move `spark-command` and `spark-notify` agents from
`packages/stage-ui/src/tools/character/orchestrator/` to
`packages/core-agent/src/agents/` for better separation of concerns and
reusability across packages.
## Changes
- **Relocate spark-command agent** — moved `spark-command-shared.ts`,
`spark-command.ts`, and `spark-command.test.ts` to
`packages/core-agent/src/agents/spark-command/`
- **Relocate spark-notify test** — moved `spark-notify.test.ts` to
`packages/core-agent/src/agents/spark-notify/`
- **Add barrel export** — created
`packages/core-agent/src/agents/spark-command/index.ts` with re-exports
- **Update package.json** — added `./agents/spark-command` entry in
`packages/core-agent/package.json`
- **Update build config** — added `src/agents/spark-command/index.ts` to
`tsdown.config.ts` entry list
- **Consolidate schemas** — merged duplicate
`sparkNotifyCommandGuidanceSchema` into `sparkCommandGuidanceSchema`
- **Add JSDoc** — added `@example` blocks to all normalize functions in
`schema.ts`
- **Update imports** — provider tests and `tool-resolver.ts` now import
from `@proj-airi/core-agent/agents/spark-command`
- **Delete legacy shims** — removed `stage-ui/src/tools/character/`
re-export layer
## Verification
```bash
pnpm -F @proj-airi/core-agent typecheck
pnpm -F @proj-airi/stage-ui typecheck
pnpm -F @proj-airi/core-agent exec vitest run
pnpm lint
```
2026-09-12 09:34:05 +08:00
..
2026-08-26 20:13:10 +08:00
2026-08-30 14:12:26 +08:00
2026-08-30 02:31:30 +08:00
2026-08-26 20:13:10 +08:00
2026-09-12 09:34:05 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-09-11 01:46:40 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-08-31 14:58:43 +08:00
2026-08-30 02:31:30 +08:00
2026-08-26 20:13:10 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 03:11:51 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-09-10 00:08:35 +08:00
2026-08-30 02:31:30 +08:00
2026-09-10 00:01:53 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00
2026-09-11 02:36:18 +08:00
2026-09-10 00:21:06 +08:00
2026-09-09 08:26:18 +00:00
2026-09-12 09:34:05 +08:00
2026-09-11 01:56:54 +08:00
2026-09-05 19:29:32 +08:00
2026-09-02 02:23:24 +08:00
2026-08-26 20:13:10 +08:00
2026-09-01 10:31:12 +08:00
2026-08-30 02:31:30 +08:00
2026-09-02 19:35:25 +08:00
2026-09-06 16:28:01 +00:00
2026-08-26 20:13:10 +08:00
2026-08-26 20:13:10 +08:00
2026-08-30 02:31:30 +08:00
2026-08-30 02:31:30 +08:00