@zmice/zc 0.1.1 → 0.2.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.
- package/README.md +153 -126
- package/dist/adapters/codex.d.ts +0 -0
- package/dist/adapters/codex.d.ts.map +1 -1
- package/dist/adapters/codex.js +4 -2
- package/dist/adapters/codex.js.map +1 -1
- package/dist/adapters/index.d.ts +0 -0
- package/dist/adapters/index.d.ts.map +0 -0
- package/dist/adapters/index.js +0 -0
- package/dist/adapters/index.js.map +0 -0
- package/dist/adapters/qwen-code.d.ts +0 -0
- package/dist/adapters/qwen-code.d.ts.map +1 -1
- package/dist/adapters/qwen-code.js +7 -5
- package/dist/adapters/qwen-code.js.map +1 -1
- package/dist/adapters/types.d.ts +0 -0
- package/dist/adapters/types.d.ts.map +0 -0
- package/dist/adapters/types.js +0 -0
- package/dist/adapters/types.js.map +0 -0
- package/dist/cli/__tests__/i18n.test.d.ts +2 -0
- package/dist/cli/__tests__/i18n.test.d.ts.map +1 -0
- package/dist/cli/__tests__/i18n.test.js +45 -0
- package/dist/cli/__tests__/i18n.test.js.map +1 -0
- package/dist/cli/__tests__/platform.test.d.ts +2 -0
- package/dist/cli/__tests__/platform.test.d.ts.map +1 -0
- package/dist/cli/__tests__/platform.test.js +483 -0
- package/dist/cli/__tests__/platform.test.js.map +1 -0
- package/dist/cli/__tests__/surface.test.d.ts +2 -0
- package/dist/cli/__tests__/surface.test.d.ts.map +1 -0
- package/dist/cli/__tests__/surface.test.js +15 -0
- package/dist/cli/__tests__/surface.test.js.map +1 -0
- package/dist/cli/__tests__/toolkit.test.d.ts +2 -0
- package/dist/cli/__tests__/toolkit.test.d.ts.map +1 -0
- package/dist/cli/__tests__/toolkit.test.js +72 -0
- package/dist/cli/__tests__/toolkit.test.js.map +1 -0
- package/dist/cli/__tests__/upstream.test.d.ts +2 -0
- package/dist/cli/__tests__/upstream.test.d.ts.map +1 -0
- package/dist/cli/__tests__/upstream.test.js +163 -0
- package/dist/cli/__tests__/upstream.test.js.map +1 -0
- package/dist/cli/doctor.d.ts +0 -0
- package/dist/cli/doctor.d.ts.map +0 -0
- package/dist/cli/doctor.js +21 -21
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/index.d.ts +2 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +34 -14
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/msg.d.ts +0 -0
- package/dist/cli/msg.d.ts.map +1 -1
- package/dist/cli/msg.js +73 -5
- package/dist/cli/msg.js.map +1 -1
- package/dist/cli/platform.d.ts +32 -0
- package/dist/cli/platform.d.ts.map +1 -0
- package/dist/cli/platform.js +635 -0
- package/dist/cli/platform.js.map +1 -0
- package/dist/cli/run.d.ts +0 -0
- package/dist/cli/run.d.ts.map +0 -0
- package/dist/cli/run.js +7 -7
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/setup.d.ts +0 -0
- package/dist/cli/setup.d.ts.map +0 -0
- package/dist/cli/setup.js +7 -7
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli/task.d.ts +0 -0
- package/dist/cli/task.d.ts.map +1 -1
- package/dist/cli/task.js +108 -8
- package/dist/cli/task.js.map +1 -1
- package/dist/cli/team.d.ts +12 -0
- package/dist/cli/team.d.ts.map +1 -1
- package/dist/cli/team.js +82 -39
- package/dist/cli/team.js.map +1 -1
- package/dist/cli/toolkit.d.ts +3 -0
- package/dist/cli/toolkit.d.ts.map +1 -0
- package/dist/cli/toolkit.js +160 -0
- package/dist/cli/toolkit.js.map +1 -0
- package/dist/cli/upstream.d.ts +19 -0
- package/dist/cli/upstream.d.ts.map +1 -0
- package/dist/cli/upstream.js +705 -0
- package/dist/cli/upstream.js.map +1 -0
- package/dist/node_modules/@zmice/platform-core/dist/index.d.ts +72 -0
- package/dist/node_modules/@zmice/platform-core/dist/index.d.ts.map +1 -0
- package/dist/node_modules/@zmice/platform-core/dist/index.js +105 -0
- package/dist/node_modules/@zmice/platform-core/dist/index.js.map +1 -0
- package/dist/node_modules/@zmice/platform-core/dist/index.test.d.ts +2 -0
- package/dist/node_modules/@zmice/platform-core/dist/index.test.d.ts.map +1 -0
- package/dist/node_modules/@zmice/platform-core/dist/index.test.js +104 -0
- package/dist/node_modules/@zmice/platform-core/dist/index.test.js.map +1 -0
- package/dist/node_modules/@zmice/platform-core/package.json +34 -0
- package/dist/platform-state/index.d.ts +4 -0
- package/dist/platform-state/index.d.ts.map +1 -0
- package/dist/platform-state/index.js +3 -0
- package/dist/platform-state/index.js.map +1 -0
- package/dist/platform-state/receipt.d.ts +11 -0
- package/dist/platform-state/receipt.d.ts.map +1 -0
- package/dist/platform-state/receipt.js +27 -0
- package/dist/platform-state/receipt.js.map +1 -0
- package/dist/platform-state/status.d.ts +3 -0
- package/dist/platform-state/status.d.ts.map +1 -0
- package/dist/platform-state/status.js +82 -0
- package/dist/platform-state/status.js.map +1 -0
- package/dist/platform-state/status.test.d.ts +2 -0
- package/dist/platform-state/status.test.d.ts.map +1 -0
- package/dist/platform-state/status.test.js +120 -0
- package/dist/platform-state/status.test.js.map +1 -0
- package/dist/platform-state/types.d.ts +58 -0
- package/dist/platform-state/types.d.ts.map +1 -0
- package/dist/platform-state/types.js +2 -0
- package/dist/platform-state/types.js.map +1 -0
- package/dist/runtime/__tests__/logger.test.d.ts +2 -0
- package/dist/runtime/__tests__/logger.test.d.ts.map +1 -0
- package/dist/runtime/__tests__/logger.test.js +11 -0
- package/dist/runtime/__tests__/logger.test.js.map +1 -0
- package/dist/runtime/__tests__/session-manager.test.d.ts +2 -0
- package/dist/runtime/__tests__/session-manager.test.d.ts.map +1 -0
- package/dist/runtime/__tests__/session-manager.test.js +11 -0
- package/dist/runtime/__tests__/session-manager.test.js.map +1 -0
- package/dist/runtime/__tests__/worktree-manager.test.d.ts +2 -0
- package/dist/runtime/__tests__/worktree-manager.test.d.ts.map +1 -0
- package/dist/runtime/__tests__/worktree-manager.test.js +11 -0
- package/dist/runtime/__tests__/worktree-manager.test.js.map +1 -0
- package/dist/runtime/logger.d.ts +5 -1
- package/dist/runtime/logger.d.ts.map +1 -1
- package/dist/runtime/logger.js +11 -1
- package/dist/runtime/logger.js.map +1 -1
- package/dist/runtime/session-manager.d.ts +0 -0
- package/dist/runtime/session-manager.d.ts.map +0 -0
- package/dist/runtime/session-manager.js +0 -0
- package/dist/runtime/session-manager.js.map +0 -0
- package/dist/runtime/state.d.ts +2 -8
- package/dist/runtime/state.d.ts.map +1 -1
- package/dist/runtime/state.js +7 -15
- package/dist/runtime/state.js.map +1 -1
- package/dist/runtime/worktree-manager.d.ts +5 -26
- package/dist/runtime/worktree-manager.d.ts.map +1 -1
- package/dist/runtime/worktree-manager.js +34 -98
- package/dist/runtime/worktree-manager.js.map +1 -1
- package/dist/team/__tests__/mailbox.test.d.ts +2 -0
- package/dist/team/__tests__/mailbox.test.d.ts.map +1 -0
- package/dist/team/__tests__/mailbox.test.js +22 -0
- package/dist/team/__tests__/mailbox.test.js.map +1 -0
- package/dist/team/__tests__/orchestrator.test.d.ts +2 -0
- package/dist/team/__tests__/orchestrator.test.d.ts.map +1 -0
- package/dist/team/__tests__/orchestrator.test.js +13 -0
- package/dist/team/__tests__/orchestrator.test.js.map +1 -0
- package/dist/team/__tests__/task-queue.test.d.ts +2 -0
- package/dist/team/__tests__/task-queue.test.d.ts.map +1 -0
- package/dist/team/__tests__/task-queue.test.js +28 -0
- package/dist/team/__tests__/task-queue.test.js.map +1 -0
- package/dist/team/__tests__/worker-manager.test.d.ts +2 -0
- package/dist/team/__tests__/worker-manager.test.d.ts.map +1 -0
- package/dist/team/__tests__/worker-manager.test.js +13 -0
- package/dist/team/__tests__/worker-manager.test.js.map +1 -0
- package/dist/team/mailbox.d.ts +12 -10
- package/dist/team/mailbox.d.ts.map +1 -1
- package/dist/team/mailbox.js +40 -27
- package/dist/team/mailbox.js.map +1 -1
- package/dist/team/orchestrator.d.ts +1 -6
- package/dist/team/orchestrator.d.ts.map +1 -1
- package/dist/team/orchestrator.js +27 -67
- package/dist/team/orchestrator.js.map +1 -1
- package/dist/team/task-queue.d.ts +18 -17
- package/dist/team/task-queue.d.ts.map +1 -1
- package/dist/team/task-queue.js +68 -71
- package/dist/team/task-queue.js.map +1 -1
- package/dist/team/worker-manager.d.ts +13 -36
- package/dist/team/worker-manager.d.ts.map +1 -1
- package/dist/team/worker-manager.js +34 -129
- package/dist/team/worker-manager.js.map +1 -1
- package/dist/utils/config.d.ts +15 -1
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +39 -1
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/install-target.d.ts +23 -0
- package/dist/utils/install-target.d.ts.map +1 -0
- package/dist/utils/install-target.js +89 -0
- package/dist/utils/install-target.js.map +1 -0
- package/dist/utils/install-target.test.d.ts +2 -0
- package/dist/utils/install-target.test.d.ts.map +1 -0
- package/dist/utils/install-target.test.js +71 -0
- package/dist/utils/install-target.test.js.map +1 -0
- package/dist/utils/platform-install-receipt.d.ts +11 -0
- package/dist/utils/platform-install-receipt.d.ts.map +1 -0
- package/dist/utils/platform-install-receipt.js +62 -0
- package/dist/utils/platform-install-receipt.js.map +1 -0
- package/dist/utils/platform-install-receipt.test.d.ts +2 -0
- package/dist/utils/platform-install-receipt.test.d.ts.map +1 -0
- package/dist/utils/platform-install-receipt.test.js +74 -0
- package/dist/utils/platform-install-receipt.test.js.map +1 -0
- package/dist/utils/platform.d.ts +0 -0
- package/dist/utils/platform.d.ts.map +0 -0
- package/dist/utils/platform.js +0 -0
- package/dist/utils/platform.js.map +0 -0
- package/dist/utils/skill-loader.d.ts +0 -9
- package/dist/utils/skill-loader.d.ts.map +1 -1
- package/dist/utils/skill-loader.js +19 -26
- package/dist/utils/skill-loader.js.map +1 -1
- package/dist/utils/workspace.d.ts +28 -0
- package/dist/utils/workspace.d.ts.map +1 -0
- package/dist/utils/workspace.js +103 -0
- package/dist/utils/workspace.js.map +1 -0
- package/dist/utils/workspace.test.d.ts +2 -0
- package/dist/utils/workspace.test.d.ts.map +1 -0
- package/dist/utils/workspace.test.js +50 -0
- package/dist/utils/workspace.test.js.map +1 -0
- package/package.json +48 -36
- package/vendor/node_modules/@zmice/platform-core/dist/index.d.ts +72 -0
- package/vendor/node_modules/@zmice/platform-core/dist/index.d.ts.map +1 -0
- package/vendor/node_modules/@zmice/platform-core/dist/index.js +105 -0
- package/vendor/node_modules/@zmice/platform-core/dist/index.js.map +1 -0
- package/vendor/node_modules/@zmice/platform-core/dist/index.test.d.ts +2 -0
- package/vendor/node_modules/@zmice/platform-core/dist/index.test.d.ts.map +1 -0
- package/vendor/node_modules/@zmice/platform-core/dist/index.test.js +104 -0
- package/vendor/node_modules/@zmice/platform-core/dist/index.test.js.map +1 -0
- package/vendor/node_modules/@zmice/platform-core/package.json +34 -0
- package/vendor/packages/platform-codex/dist/generate.d.ts +2 -0
- package/vendor/packages/platform-codex/dist/generate.d.ts.map +1 -0
- package/vendor/packages/platform-codex/dist/generate.js +2 -0
- package/vendor/packages/platform-codex/dist/generate.js.map +1 -0
- package/vendor/packages/platform-codex/dist/index.d.ts +15 -0
- package/vendor/packages/platform-codex/dist/index.d.ts.map +1 -0
- package/vendor/packages/platform-codex/dist/index.js +46 -0
- package/vendor/packages/platform-codex/dist/index.js.map +1 -0
- package/vendor/packages/platform-codex/dist/index.test.d.ts +2 -0
- package/vendor/packages/platform-codex/dist/index.test.d.ts.map +1 -0
- package/vendor/packages/platform-codex/dist/index.test.js +38 -0
- package/vendor/packages/platform-codex/dist/index.test.js.map +1 -0
- package/vendor/packages/platform-codex/dist/install.d.ts +2 -0
- package/vendor/packages/platform-codex/dist/install.d.ts.map +1 -0
- package/vendor/packages/platform-codex/dist/install.js +2 -0
- package/vendor/packages/platform-codex/dist/install.js.map +1 -0
- package/vendor/packages/platform-codex/package.json +46 -0
- package/vendor/packages/platform-codex/templates/AGENTS.md +7 -0
- package/vendor/packages/platform-qoder/dist/generate.d.ts +2 -0
- package/vendor/packages/platform-qoder/dist/generate.d.ts.map +1 -0
- package/vendor/packages/platform-qoder/dist/generate.js +2 -0
- package/vendor/packages/platform-qoder/dist/generate.js.map +1 -0
- package/vendor/packages/platform-qoder/dist/index.d.ts +15 -0
- package/vendor/packages/platform-qoder/dist/index.d.ts.map +1 -0
- package/vendor/packages/platform-qoder/dist/index.js +46 -0
- package/vendor/packages/platform-qoder/dist/index.js.map +1 -0
- package/vendor/packages/platform-qoder/dist/index.test.d.ts +2 -0
- package/vendor/packages/platform-qoder/dist/index.test.d.ts.map +1 -0
- package/vendor/packages/platform-qoder/dist/index.test.js +38 -0
- package/vendor/packages/platform-qoder/dist/index.test.js.map +1 -0
- package/vendor/packages/platform-qoder/dist/install.d.ts +2 -0
- package/vendor/packages/platform-qoder/dist/install.d.ts.map +1 -0
- package/vendor/packages/platform-qoder/dist/install.js +2 -0
- package/vendor/packages/platform-qoder/dist/install.js.map +1 -0
- package/vendor/packages/platform-qoder/package.json +46 -0
- package/vendor/packages/platform-qoder/templates/instructions.md +7 -0
- package/vendor/packages/platform-qwen/dist/generate.d.ts +2 -0
- package/vendor/packages/platform-qwen/dist/generate.d.ts.map +1 -0
- package/vendor/packages/platform-qwen/dist/generate.js +2 -0
- package/vendor/packages/platform-qwen/dist/generate.js.map +1 -0
- package/vendor/packages/platform-qwen/dist/index.d.ts +16 -0
- package/vendor/packages/platform-qwen/dist/index.d.ts.map +1 -0
- package/vendor/packages/platform-qwen/dist/index.js +60 -0
- package/vendor/packages/platform-qwen/dist/index.js.map +1 -0
- package/vendor/packages/platform-qwen/dist/index.test.d.ts +2 -0
- package/vendor/packages/platform-qwen/dist/index.test.d.ts.map +1 -0
- package/vendor/packages/platform-qwen/dist/index.test.js +46 -0
- package/vendor/packages/platform-qwen/dist/index.test.js.map +1 -0
- package/vendor/packages/platform-qwen/dist/install.d.ts +2 -0
- package/vendor/packages/platform-qwen/dist/install.d.ts.map +1 -0
- package/vendor/packages/platform-qwen/dist/install.js +2 -0
- package/vendor/packages/platform-qwen/dist/install.js.map +1 -0
- package/vendor/packages/platform-qwen/package.json +46 -0
- package/vendor/packages/platform-qwen/templates/QWEN.md +7 -0
- package/vendor/packages/platform-qwen/templates/qwen-extension.json +7 -0
- package/vendor/packages/toolkit/dist/content-lint.test.d.ts +2 -0
- package/vendor/packages/toolkit/dist/content-lint.test.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/content-lint.test.js +252 -0
- package/vendor/packages/toolkit/dist/content-lint.test.js.map +1 -0
- package/vendor/packages/toolkit/dist/governance/index.d.ts +2 -0
- package/vendor/packages/toolkit/dist/governance/index.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/governance/index.js +2 -0
- package/vendor/packages/toolkit/dist/governance/index.js.map +1 -0
- package/vendor/packages/toolkit/dist/governance/upstreams.d.ts +6 -0
- package/vendor/packages/toolkit/dist/governance/upstreams.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/governance/upstreams.js +31 -0
- package/vendor/packages/toolkit/dist/governance/upstreams.js.map +1 -0
- package/vendor/packages/toolkit/dist/governance/upstreams.test.d.ts +2 -0
- package/vendor/packages/toolkit/dist/governance/upstreams.test.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/governance/upstreams.test.js +23 -0
- package/vendor/packages/toolkit/dist/governance/upstreams.test.js.map +1 -0
- package/vendor/packages/toolkit/dist/index.d.ts +8 -0
- package/vendor/packages/toolkit/dist/index.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/index.js +8 -0
- package/vendor/packages/toolkit/dist/index.js.map +1 -0
- package/vendor/packages/toolkit/dist/lint/content-lint.d.ts +21 -0
- package/vendor/packages/toolkit/dist/lint/content-lint.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/lint/content-lint.js +250 -0
- package/vendor/packages/toolkit/dist/lint/content-lint.js.map +1 -0
- package/vendor/packages/toolkit/dist/lint/index.d.ts +2 -0
- package/vendor/packages/toolkit/dist/lint/index.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/lint/index.js +2 -0
- package/vendor/packages/toolkit/dist/lint/index.js.map +1 -0
- package/vendor/packages/toolkit/dist/loaders/asset-unit.d.ts +4 -0
- package/vendor/packages/toolkit/dist/loaders/asset-unit.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/loaders/asset-unit.js +95 -0
- package/vendor/packages/toolkit/dist/loaders/asset-unit.js.map +1 -0
- package/vendor/packages/toolkit/dist/loaders/content-tree.d.ts +2 -0
- package/vendor/packages/toolkit/dist/loaders/content-tree.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/loaders/content-tree.js +2 -0
- package/vendor/packages/toolkit/dist/loaders/content-tree.js.map +1 -0
- package/vendor/packages/toolkit/dist/loaders/fs.d.ts +6 -0
- package/vendor/packages/toolkit/dist/loaders/fs.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/loaders/fs.js +19 -0
- package/vendor/packages/toolkit/dist/loaders/fs.js.map +1 -0
- package/vendor/packages/toolkit/dist/loaders/index.d.ts +4 -0
- package/vendor/packages/toolkit/dist/loaders/index.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/loaders/index.js +4 -0
- package/vendor/packages/toolkit/dist/loaders/index.js.map +1 -0
- package/vendor/packages/toolkit/dist/loaders/simple-yaml.d.ts +2 -0
- package/vendor/packages/toolkit/dist/loaders/simple-yaml.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/loaders/simple-yaml.js +125 -0
- package/vendor/packages/toolkit/dist/loaders/simple-yaml.js.map +1 -0
- package/vendor/packages/toolkit/dist/loaders.test.d.ts +2 -0
- package/vendor/packages/toolkit/dist/loaders.test.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/loaders.test.js +84 -0
- package/vendor/packages/toolkit/dist/loaders.test.js.map +1 -0
- package/vendor/packages/toolkit/dist/manifests/index.d.ts +2 -0
- package/vendor/packages/toolkit/dist/manifests/index.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/manifests/index.js +2 -0
- package/vendor/packages/toolkit/dist/manifests/index.js.map +1 -0
- package/vendor/packages/toolkit/dist/manifests/toolkit-manifest.d.ts +7 -0
- package/vendor/packages/toolkit/dist/manifests/toolkit-manifest.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/manifests/toolkit-manifest.js +72 -0
- package/vendor/packages/toolkit/dist/manifests/toolkit-manifest.js.map +1 -0
- package/vendor/packages/toolkit/dist/manifests.test.d.ts +2 -0
- package/vendor/packages/toolkit/dist/manifests.test.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/manifests.test.js +75 -0
- package/vendor/packages/toolkit/dist/manifests.test.js.map +1 -0
- package/vendor/packages/toolkit/dist/query/index.d.ts +2 -0
- package/vendor/packages/toolkit/dist/query/index.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/query/index.js +2 -0
- package/vendor/packages/toolkit/dist/query/index.js.map +1 -0
- package/vendor/packages/toolkit/dist/query/toolkit-query.d.ts +10 -0
- package/vendor/packages/toolkit/dist/query/toolkit-query.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/query/toolkit-query.js +49 -0
- package/vendor/packages/toolkit/dist/query/toolkit-query.js.map +1 -0
- package/vendor/packages/toolkit/dist/query.test.d.ts +2 -0
- package/vendor/packages/toolkit/dist/query.test.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/query.test.js +30 -0
- package/vendor/packages/toolkit/dist/query.test.js.map +1 -0
- package/vendor/packages/toolkit/dist/schema/asset-meta.d.ts +3 -0
- package/vendor/packages/toolkit/dist/schema/asset-meta.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/schema/asset-meta.js +130 -0
- package/vendor/packages/toolkit/dist/schema/asset-meta.js.map +1 -0
- package/vendor/packages/toolkit/dist/schema/asset-unit.d.ts +3 -0
- package/vendor/packages/toolkit/dist/schema/asset-unit.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/schema/asset-unit.js +22 -0
- package/vendor/packages/toolkit/dist/schema/asset-unit.js.map +1 -0
- package/vendor/packages/toolkit/dist/schema/index.d.ts +5 -0
- package/vendor/packages/toolkit/dist/schema/index.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/schema/index.js +5 -0
- package/vendor/packages/toolkit/dist/schema/index.js.map +1 -0
- package/vendor/packages/toolkit/dist/schema/kinds.d.ts +6 -0
- package/vendor/packages/toolkit/dist/schema/kinds.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/schema/kinds.js +24 -0
- package/vendor/packages/toolkit/dist/schema/kinds.js.map +1 -0
- package/vendor/packages/toolkit/dist/schema/manifest.d.ts +3 -0
- package/vendor/packages/toolkit/dist/schema/manifest.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/schema/manifest.js +30 -0
- package/vendor/packages/toolkit/dist/schema/manifest.js.map +1 -0
- package/vendor/packages/toolkit/dist/types.d.ts +80 -0
- package/vendor/packages/toolkit/dist/types.d.ts.map +1 -0
- package/vendor/packages/toolkit/dist/types.js +6 -0
- package/vendor/packages/toolkit/dist/types.js.map +1 -0
- package/vendor/packages/toolkit/package.json +35 -0
- package/vendor/packages/toolkit/src/content/agents/architect/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/agents/architect/body.md +34 -0
- package/vendor/packages/toolkit/src/content/agents/architect/meta.yaml +25 -0
- package/vendor/packages/toolkit/src/content/agents/backend-specialist/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/agents/backend-specialist/body.md +30 -0
- package/vendor/packages/toolkit/src/content/agents/backend-specialist/meta.yaml +24 -0
- package/vendor/packages/toolkit/src/content/agents/code-reviewer/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/agents/code-reviewer/body.md +31 -0
- package/vendor/packages/toolkit/src/content/agents/code-reviewer/meta.yaml +26 -0
- package/vendor/packages/toolkit/src/content/agents/frontend-specialist/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/agents/frontend-specialist/body.md +31 -0
- package/vendor/packages/toolkit/src/content/agents/frontend-specialist/meta.yaml +24 -0
- package/vendor/packages/toolkit/src/content/agents/performance-engineer/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/agents/performance-engineer/body.md +72 -0
- package/vendor/packages/toolkit/src/content/agents/performance-engineer/meta.yaml +24 -0
- package/vendor/packages/toolkit/src/content/agents/product-owner/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/agents/product-owner/body.md +32 -0
- package/vendor/packages/toolkit/src/content/agents/product-owner/meta.yaml +24 -0
- package/vendor/packages/toolkit/src/content/agents/security-auditor/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/agents/security-auditor/body.md +83 -0
- package/vendor/packages/toolkit/src/content/agents/security-auditor/meta.yaml +24 -0
- package/vendor/packages/toolkit/src/content/agents/test-engineer/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/agents/test-engineer/body.md +30 -0
- package/vendor/packages/toolkit/src/content/agents/test-engineer/meta.yaml +28 -0
- package/vendor/packages/toolkit/src/content/commands/api/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/api/body.md +24 -0
- package/vendor/packages/toolkit/src/content/commands/api/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/build/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/build/body.md +37 -0
- package/vendor/packages/toolkit/src/content/commands/build/meta.yaml +26 -0
- package/vendor/packages/toolkit/src/content/commands/careful/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/careful/body.md +18 -0
- package/vendor/packages/toolkit/src/content/commands/careful/meta.yaml +17 -0
- package/vendor/packages/toolkit/src/content/commands/ci/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/ci/body.md +27 -0
- package/vendor/packages/toolkit/src/content/commands/ci/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/commit/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/commit/body.md +26 -0
- package/vendor/packages/toolkit/src/content/commands/commit/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/ctx-health/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/ctx-health/body.md +22 -0
- package/vendor/packages/toolkit/src/content/commands/ctx-health/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/debug/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/debug/body.md +24 -0
- package/vendor/packages/toolkit/src/content/commands/debug/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/doc/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/doc/body.md +23 -0
- package/vendor/packages/toolkit/src/content/commands/doc/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/freeze/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/freeze/body.md +17 -0
- package/vendor/packages/toolkit/src/content/commands/freeze/meta.yaml +17 -0
- package/vendor/packages/toolkit/src/content/commands/guard/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/guard/body.md +17 -0
- package/vendor/packages/toolkit/src/content/commands/guard/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/commands/idea/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/idea/body.md +23 -0
- package/vendor/packages/toolkit/src/content/commands/idea/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/learn/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/learn/body.md +37 -0
- package/vendor/packages/toolkit/src/content/commands/learn/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/migrate/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/migrate/body.md +24 -0
- package/vendor/packages/toolkit/src/content/commands/migrate/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/commands/onboard/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/onboard/body.md +24 -0
- package/vendor/packages/toolkit/src/content/commands/onboard/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/perf/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/perf/body.md +23 -0
- package/vendor/packages/toolkit/src/content/commands/perf/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/plan-review/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/plan-review/body.md +28 -0
- package/vendor/packages/toolkit/src/content/commands/plan-review/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/commands/qa/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/qa/body.md +24 -0
- package/vendor/packages/toolkit/src/content/commands/qa/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/quality-review/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/quality-review/body.md +38 -0
- package/vendor/packages/toolkit/src/content/commands/quality-review/meta.yaml +22 -0
- package/vendor/packages/toolkit/src/content/commands/retro/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/retro/body.md +25 -0
- package/vendor/packages/toolkit/src/content/commands/retro/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/commands/sdd-tdd/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/sdd-tdd/body.md +39 -0
- package/vendor/packages/toolkit/src/content/commands/sdd-tdd/meta.yaml +23 -0
- package/vendor/packages/toolkit/src/content/commands/secure/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/secure/body.md +23 -0
- package/vendor/packages/toolkit/src/content/commands/secure/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/ship/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/ship/body.md +17 -0
- package/vendor/packages/toolkit/src/content/commands/ship/meta.yaml +21 -0
- package/vendor/packages/toolkit/src/content/commands/simplify/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/simplify/body.md +24 -0
- package/vendor/packages/toolkit/src/content/commands/simplify/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/commands/spec/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/spec/body.md +32 -0
- package/vendor/packages/toolkit/src/content/commands/spec/meta.yaml +23 -0
- package/vendor/packages/toolkit/src/content/commands/task-plan/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/task-plan/body.md +32 -0
- package/vendor/packages/toolkit/src/content/commands/task-plan/meta.yaml +23 -0
- package/vendor/packages/toolkit/src/content/commands/ui/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/ui/body.md +24 -0
- package/vendor/packages/toolkit/src/content/commands/ui/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/commands/verify/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/commands/verify/body.md +32 -0
- package/vendor/packages/toolkit/src/content/commands/verify/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/skills/api-and-interface-design/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/api-and-interface-design/body.md +289 -0
- package/vendor/packages/toolkit/src/content/skills/api-and-interface-design/meta.yaml +21 -0
- package/vendor/packages/toolkit/src/content/skills/brainstorming-and-design/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/brainstorming-and-design/body.md +129 -0
- package/vendor/packages/toolkit/src/content/skills/brainstorming-and-design/meta.yaml +18 -0
- package/vendor/packages/toolkit/src/content/skills/branch-finish-and-cleanup/body.md +155 -0
- package/vendor/packages/toolkit/src/content/skills/branch-finish-and-cleanup/meta.yaml +17 -0
- package/vendor/packages/toolkit/src/content/skills/browser-qa-testing/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/browser-qa-testing/body.md +554 -0
- package/vendor/packages/toolkit/src/content/skills/browser-qa-testing/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/skills/ci-cd-and-automation/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/ci-cd-and-automation/body.md +417 -0
- package/vendor/packages/toolkit/src/content/skills/ci-cd-and-automation/meta.yaml +21 -0
- package/vendor/packages/toolkit/src/content/skills/code-review-and-quality/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/code-review-and-quality/body.md +130 -0
- package/vendor/packages/toolkit/src/content/skills/code-review-and-quality/meta.yaml +21 -0
- package/vendor/packages/toolkit/src/content/skills/code-simplification/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/code-simplification/body.md +326 -0
- package/vendor/packages/toolkit/src/content/skills/code-simplification/meta.yaml +21 -0
- package/vendor/packages/toolkit/src/content/skills/codebase-onboarding/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/codebase-onboarding/body.md +40 -0
- package/vendor/packages/toolkit/src/content/skills/codebase-onboarding/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/skills/context-budget-audit/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/context-budget-audit/body.md +38 -0
- package/vendor/packages/toolkit/src/content/skills/context-budget-audit/meta.yaml +17 -0
- package/vendor/packages/toolkit/src/content/skills/context-engineering/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/context-engineering/body.md +55 -0
- package/vendor/packages/toolkit/src/content/skills/context-engineering/meta.yaml +17 -0
- package/vendor/packages/toolkit/src/content/skills/continuous-learning/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/continuous-learning/body.md +367 -0
- package/vendor/packages/toolkit/src/content/skills/continuous-learning/meta.yaml +18 -0
- package/vendor/packages/toolkit/src/content/skills/debugging-and-error-recovery/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/debugging-and-error-recovery/body.md +43 -0
- package/vendor/packages/toolkit/src/content/skills/debugging-and-error-recovery/meta.yaml +21 -0
- package/vendor/packages/toolkit/src/content/skills/deprecation-and-migration/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/deprecation-and-migration/body.md +201 -0
- package/vendor/packages/toolkit/src/content/skills/deprecation-and-migration/meta.yaml +21 -0
- package/vendor/packages/toolkit/src/content/skills/developer-experience-audit/body.md +49 -0
- package/vendor/packages/toolkit/src/content/skills/developer-experience-audit/meta.yaml +17 -0
- package/vendor/packages/toolkit/src/content/skills/documentation-and-adrs/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/documentation-and-adrs/body.md +61 -0
- package/vendor/packages/toolkit/src/content/skills/documentation-and-adrs/meta.yaml +21 -0
- package/vendor/packages/toolkit/src/content/skills/engineering-principles/body.md +54 -0
- package/vendor/packages/toolkit/src/content/skills/engineering-principles/meta.yaml +18 -0
- package/vendor/packages/toolkit/src/content/skills/frontend-ui-engineering/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/frontend-ui-engineering/body.md +324 -0
- package/vendor/packages/toolkit/src/content/skills/frontend-ui-engineering/meta.yaml +21 -0
- package/vendor/packages/toolkit/src/content/skills/git-workflow-and-versioning/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/git-workflow-and-versioning/body.md +319 -0
- package/vendor/packages/toolkit/src/content/skills/git-workflow-and-versioning/meta.yaml +21 -0
- package/vendor/packages/toolkit/src/content/skills/idea-refine/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/idea-refine/body.md +173 -0
- package/vendor/packages/toolkit/src/content/skills/idea-refine/meta.yaml +17 -0
- package/vendor/packages/toolkit/src/content/skills/incremental-implementation/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/incremental-implementation/body.md +43 -0
- package/vendor/packages/toolkit/src/content/skills/incremental-implementation/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/skills/multi-perspective-review/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/multi-perspective-review/body.md +52 -0
- package/vendor/packages/toolkit/src/content/skills/multi-perspective-review/meta.yaml +18 -0
- package/vendor/packages/toolkit/src/content/skills/parallel-agent-dispatch/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/parallel-agent-dispatch/body.md +351 -0
- package/vendor/packages/toolkit/src/content/skills/parallel-agent-dispatch/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/skills/performance-optimization/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/performance-optimization/body.md +345 -0
- package/vendor/packages/toolkit/src/content/skills/performance-optimization/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/skills/planning-and-task-breakdown/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/planning-and-task-breakdown/body.md +48 -0
- package/vendor/packages/toolkit/src/content/skills/planning-and-task-breakdown/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/skills/release-documentation-sync/body.md +54 -0
- package/vendor/packages/toolkit/src/content/skills/release-documentation-sync/meta.yaml +15 -0
- package/vendor/packages/toolkit/src/content/skills/review-response-and-resolution/body.md +61 -0
- package/vendor/packages/toolkit/src/content/skills/review-response-and-resolution/meta.yaml +18 -0
- package/vendor/packages/toolkit/src/content/skills/safety-guardrails/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/safety-guardrails/body.md +43 -0
- package/vendor/packages/toolkit/src/content/skills/safety-guardrails/meta.yaml +17 -0
- package/vendor/packages/toolkit/src/content/skills/sdd-tdd-workflow/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/sdd-tdd-workflow/body.md +371 -0
- package/vendor/packages/toolkit/src/content/skills/sdd-tdd-workflow/meta.yaml +25 -0
- package/vendor/packages/toolkit/src/content/skills/security-and-hardening/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/security-and-hardening/body.md +344 -0
- package/vendor/packages/toolkit/src/content/skills/security-and-hardening/meta.yaml +21 -0
- package/vendor/packages/toolkit/src/content/skills/shipping-and-launch/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/shipping-and-launch/body.md +55 -0
- package/vendor/packages/toolkit/src/content/skills/shipping-and-launch/meta.yaml +22 -0
- package/vendor/packages/toolkit/src/content/skills/source-driven-development/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/source-driven-development/body.md +186 -0
- package/vendor/packages/toolkit/src/content/skills/source-driven-development/meta.yaml +18 -0
- package/vendor/packages/toolkit/src/content/skills/spec-driven-development/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/spec-driven-development/body.md +49 -0
- package/vendor/packages/toolkit/src/content/skills/spec-driven-development/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/skills/sprint-retrospective/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/sprint-retrospective/body.md +336 -0
- package/vendor/packages/toolkit/src/content/skills/sprint-retrospective/meta.yaml +17 -0
- package/vendor/packages/toolkit/src/content/skills/subagent-driven-development/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/subagent-driven-development/body.md +228 -0
- package/vendor/packages/toolkit/src/content/skills/subagent-driven-development/meta.yaml +19 -0
- package/vendor/packages/toolkit/src/content/skills/team-orchestration/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/team-orchestration/body.md +372 -0
- package/vendor/packages/toolkit/src/content/skills/team-orchestration/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/skills/test-driven-development/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/test-driven-development/body.md +374 -0
- package/vendor/packages/toolkit/src/content/skills/test-driven-development/meta.yaml +20 -0
- package/vendor/packages/toolkit/src/content/skills/using-agent-skills/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/using-agent-skills/body.md +169 -0
- package/vendor/packages/toolkit/src/content/skills/using-agent-skills/meta.yaml +23 -0
- package/vendor/packages/toolkit/src/content/skills/verification-before-completion/assets/.gitkeep +0 -0
- package/vendor/packages/toolkit/src/content/skills/verification-before-completion/body.md +68 -0
- package/vendor/packages/toolkit/src/content/skills/verification-before-completion/meta.yaml +20 -0
- package/vendor/packages/toolkit/templates/README.md +12 -0
- package/vendor/packages/toolkit/templates/asset-unit/assets/.gitkeep +1 -0
- package/vendor/packages/toolkit/templates/asset-unit/body.md +3 -0
- package/vendor/packages/toolkit/templates/asset-unit/meta.yaml +6 -0
- package/vendor/references/upstreams.yaml +89 -0
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
# Code Simplification
|
|
2
|
+
|
|
3
|
+
> Inspired by the [Claude Code Simplifier plugin](https://github.com/anthropics/claude-plugins-official/blob/main/plugins/code-simplifier/agents/code-simplifier.md). Adapted here as a model-agnostic, process-driven skill for any AI coding agent.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
Simplify code by reducing complexity while preserving exact behavior. The goal is not fewer lines — it's code that is easier to read, understand, modify, and debug. Every simplification must pass a simple test: "Would a new team member understand this faster than the original?"
|
|
8
|
+
|
|
9
|
+
## When to Use
|
|
10
|
+
|
|
11
|
+
- After a feature is working and tests pass, but the implementation feels heavier than it needs to be
|
|
12
|
+
- During code review when readability or complexity issues are flagged
|
|
13
|
+
- When you encounter deeply nested logic, long functions, or unclear names
|
|
14
|
+
- When refactoring code written under time pressure
|
|
15
|
+
- When consolidating related logic scattered across files
|
|
16
|
+
- After merging changes that introduced duplication or inconsistency
|
|
17
|
+
|
|
18
|
+
**When NOT to use:**
|
|
19
|
+
|
|
20
|
+
- Code is already clean and readable — don't simplify for the sake of it
|
|
21
|
+
- You don't understand what the code does yet — comprehend before you simplify
|
|
22
|
+
- The code is performance-critical and the "simpler" version would be measurably slower
|
|
23
|
+
- You're about to rewrite the module entirely — simplifying throwaway code wastes effort
|
|
24
|
+
|
|
25
|
+
## The Five Principles
|
|
26
|
+
|
|
27
|
+
### 1. Preserve Behavior Exactly
|
|
28
|
+
|
|
29
|
+
Don't change what the code does — only how it expresses it. All inputs, outputs, side effects, error behavior, and edge cases must remain identical. If you're not sure a simplification preserves behavior, don't make it.
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
ASK BEFORE EVERY CHANGE:
|
|
33
|
+
→ Does this produce the same output for every input?
|
|
34
|
+
→ Does this maintain the same error behavior?
|
|
35
|
+
→ Does this preserve the same side effects and ordering?
|
|
36
|
+
→ Do all existing tests still pass without modification?
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### 2. Follow Project Conventions
|
|
40
|
+
|
|
41
|
+
Simplification means making code more consistent with the codebase, not imposing external preferences. Before simplifying:
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
1. Read CLAUDE.md / project conventions
|
|
45
|
+
2. Study how neighboring code handles similar patterns
|
|
46
|
+
3. Match the project's style for:
|
|
47
|
+
- Import ordering and module system
|
|
48
|
+
- Function declaration style
|
|
49
|
+
- Naming conventions
|
|
50
|
+
- Error handling patterns
|
|
51
|
+
- Type annotation depth
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Simplification that breaks project consistency is not simplification — it's churn.
|
|
55
|
+
|
|
56
|
+
### 3. Prefer Clarity Over Cleverness
|
|
57
|
+
|
|
58
|
+
Explicit code is better than compact code when the compact version requires a mental pause to parse.
|
|
59
|
+
|
|
60
|
+
```typescript
|
|
61
|
+
// UNCLEAR: Dense ternary chain
|
|
62
|
+
const label = isNew ? 'New' : isUpdated ? 'Updated' : isArchived ? 'Archived' : 'Active';
|
|
63
|
+
|
|
64
|
+
// CLEAR: Readable mapping
|
|
65
|
+
function getStatusLabel(item: Item): string {
|
|
66
|
+
if (item.isNew) return 'New';
|
|
67
|
+
if (item.isUpdated) return 'Updated';
|
|
68
|
+
if (item.isArchived) return 'Archived';
|
|
69
|
+
return 'Active';
|
|
70
|
+
}
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
```typescript
|
|
74
|
+
// UNCLEAR: Chained reduces with inline logic
|
|
75
|
+
const result = items.reduce((acc, item) => ({
|
|
76
|
+
...acc,
|
|
77
|
+
[item.id]: { ...acc[item.id], count: (acc[item.id]?.count ?? 0) + 1 }
|
|
78
|
+
}), {});
|
|
79
|
+
|
|
80
|
+
// CLEAR: Named intermediate step
|
|
81
|
+
const countById = new Map<string, number>();
|
|
82
|
+
for (const item of items) {
|
|
83
|
+
countById.set(item.id, (countById.get(item.id) ?? 0) + 1);
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### 4. Maintain Balance
|
|
88
|
+
|
|
89
|
+
Simplification has a failure mode: over-simplification. Watch for these traps:
|
|
90
|
+
|
|
91
|
+
- **Inlining too aggressively** — removing a helper that gave a concept a name makes the call site harder to read
|
|
92
|
+
- **Combining unrelated logic** — two simple functions merged into one complex function is not simpler
|
|
93
|
+
- **Removing "unnecessary" abstraction** — some abstractions exist for extensibility or testability, not complexity
|
|
94
|
+
- **Optimizing for line count** — fewer lines is not the goal; easier comprehension is
|
|
95
|
+
|
|
96
|
+
### 5. Scope to What Changed
|
|
97
|
+
|
|
98
|
+
Default to simplifying recently modified code. Avoid drive-by refactors of unrelated code unless explicitly asked to broaden scope. Unscoped simplification creates noise in diffs and risks unintended regressions.
|
|
99
|
+
|
|
100
|
+
## The Simplification Process
|
|
101
|
+
|
|
102
|
+
### Step 1: Understand Before Touching (Chesterton's Fence)
|
|
103
|
+
|
|
104
|
+
Before changing or removing anything, understand why it exists. This is Chesterton's Fence: if you see a fence across a road and don't understand why it's there, don't tear it down. First understand the reason, then decide if the reason still applies.
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
BEFORE SIMPLIFYING, ANSWER:
|
|
108
|
+
- What is this code's responsibility?
|
|
109
|
+
- What calls it? What does it call?
|
|
110
|
+
- What are the edge cases and error paths?
|
|
111
|
+
- Are there tests that define the expected behavior?
|
|
112
|
+
- Why might it have been written this way? (Performance? Platform constraint? Historical reason?)
|
|
113
|
+
- Check git blame: what was the original context for this code?
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
If you can't answer these, you're not ready to simplify. Read more context first.
|
|
117
|
+
|
|
118
|
+
### Step 2: Identify Simplification Opportunities
|
|
119
|
+
|
|
120
|
+
Scan for these patterns — each one is a concrete signal, not a vague smell:
|
|
121
|
+
|
|
122
|
+
**Structural complexity:**
|
|
123
|
+
|
|
124
|
+
| Pattern | Signal | Simplification |
|
|
125
|
+
|---------|--------|----------------|
|
|
126
|
+
| Deep nesting (3+ levels) | Hard to follow control flow | Extract conditions into guard clauses or helper functions |
|
|
127
|
+
| Long functions (50+ lines) | Multiple responsibilities | Split into focused functions with descriptive names |
|
|
128
|
+
| Nested ternaries | Requires mental stack to parse | Replace with if/else chains, switch, or lookup objects |
|
|
129
|
+
| Boolean parameter flags | `doThing(true, false, true)` | Replace with options objects or separate functions |
|
|
130
|
+
| Repeated conditionals | Same `if` check in multiple places | Extract to a well-named predicate function |
|
|
131
|
+
|
|
132
|
+
**Naming and readability:**
|
|
133
|
+
|
|
134
|
+
| Pattern | Signal | Simplification |
|
|
135
|
+
|---------|--------|----------------|
|
|
136
|
+
| Generic names | `data`, `result`, `temp`, `val`, `item` | Rename to describe the content: `userProfile`, `validationErrors` |
|
|
137
|
+
| Abbreviated names | `usr`, `cfg`, `btn`, `evt` | Use full words unless the abbreviation is universal (`id`, `url`, `api`) |
|
|
138
|
+
| Misleading names | Function named `get` that also mutates state | Rename to reflect actual behavior |
|
|
139
|
+
| Comments explaining "what" | `// increment counter` above `count++` | Delete the comment — the code is clear enough |
|
|
140
|
+
| Comments explaining "why" | `// Retry because the API is flaky under load` | Keep these — they carry intent the code can't express |
|
|
141
|
+
|
|
142
|
+
**Redundancy:**
|
|
143
|
+
|
|
144
|
+
| Pattern | Signal | Simplification |
|
|
145
|
+
|---------|--------|----------------|
|
|
146
|
+
| Duplicated logic | Same 5+ lines in multiple places | Extract to a shared function |
|
|
147
|
+
| Dead code | Unreachable branches, unused variables, commented-out blocks | Remove (after confirming it's truly dead) |
|
|
148
|
+
| Unnecessary abstractions | Wrapper that adds no value | Inline the wrapper, call the underlying function directly |
|
|
149
|
+
| Over-engineered patterns | Factory-for-a-factory, strategy-with-one-strategy | Replace with the simple direct approach |
|
|
150
|
+
| Redundant type assertions | Casting to a type that's already inferred | Remove the assertion |
|
|
151
|
+
|
|
152
|
+
### Step 3: Apply Changes Incrementally
|
|
153
|
+
|
|
154
|
+
Make one simplification at a time. Run tests after each change. **Submit refactoring changes separately from feature or bug fix changes.** A PR that refactors and adds a feature is two PRs — split them.
|
|
155
|
+
|
|
156
|
+
```
|
|
157
|
+
FOR EACH SIMPLIFICATION:
|
|
158
|
+
1. Make the change
|
|
159
|
+
2. Run the test suite
|
|
160
|
+
3. If tests pass → commit (or continue to next simplification)
|
|
161
|
+
4. If tests fail → revert and reconsider
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
Avoid batching multiple simplifications into a single untested change. If something breaks, you need to know which simplification caused it.
|
|
165
|
+
|
|
166
|
+
**The Rule of 500:** If a refactoring would touch more than 500 lines, invest in automation (codemods, sed scripts, AST transforms) rather than making the changes by hand. Manual edits at that scale are error-prone and exhausting to review.
|
|
167
|
+
|
|
168
|
+
### Step 4: Verify the Result
|
|
169
|
+
|
|
170
|
+
After all simplifications, step back and evaluate the whole:
|
|
171
|
+
|
|
172
|
+
```
|
|
173
|
+
COMPARE BEFORE AND AFTER:
|
|
174
|
+
- Is the simplified version genuinely easier to understand?
|
|
175
|
+
- Did you introduce any new patterns inconsistent with the codebase?
|
|
176
|
+
- Is the diff clean and reviewable?
|
|
177
|
+
- Would a teammate approve this change?
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
If the "simplified" version is harder to understand or review, revert. Not every simplification attempt succeeds.
|
|
181
|
+
|
|
182
|
+
## Language-Specific Guidance
|
|
183
|
+
|
|
184
|
+
### TypeScript / JavaScript
|
|
185
|
+
|
|
186
|
+
```typescript
|
|
187
|
+
// SIMPLIFY: Unnecessary async wrapper
|
|
188
|
+
// Before
|
|
189
|
+
async function getUser(id: string): Promise<User> {
|
|
190
|
+
return await userService.findById(id);
|
|
191
|
+
}
|
|
192
|
+
// After
|
|
193
|
+
function getUser(id: string): Promise<User> {
|
|
194
|
+
return userService.findById(id);
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
// SIMPLIFY: Verbose conditional assignment
|
|
198
|
+
// Before
|
|
199
|
+
let displayName: string;
|
|
200
|
+
if (user.nickname) {
|
|
201
|
+
displayName = user.nickname;
|
|
202
|
+
} else {
|
|
203
|
+
displayName = user.fullName;
|
|
204
|
+
}
|
|
205
|
+
// After
|
|
206
|
+
const displayName = user.nickname || user.fullName;
|
|
207
|
+
|
|
208
|
+
// SIMPLIFY: Manual array building
|
|
209
|
+
// Before
|
|
210
|
+
const activeUsers: User[] = [];
|
|
211
|
+
for (const user of users) {
|
|
212
|
+
if (user.isActive) {
|
|
213
|
+
activeUsers.push(user);
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
// After
|
|
217
|
+
const activeUsers = users.filter((user) => user.isActive);
|
|
218
|
+
|
|
219
|
+
// SIMPLIFY: Redundant boolean return
|
|
220
|
+
// Before
|
|
221
|
+
function isValid(input: string): boolean {
|
|
222
|
+
if (input.length > 0 && input.length < 100) {
|
|
223
|
+
return true;
|
|
224
|
+
}
|
|
225
|
+
return false;
|
|
226
|
+
}
|
|
227
|
+
// After
|
|
228
|
+
function isValid(input: string): boolean {
|
|
229
|
+
return input.length > 0 && input.length < 100;
|
|
230
|
+
}
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
### Python
|
|
234
|
+
|
|
235
|
+
```python
|
|
236
|
+
# SIMPLIFY: Verbose dictionary building
|
|
237
|
+
# Before
|
|
238
|
+
result = {}
|
|
239
|
+
for item in items:
|
|
240
|
+
result[item.id] = item.name
|
|
241
|
+
# After
|
|
242
|
+
result = {item.id: item.name for item in items}
|
|
243
|
+
|
|
244
|
+
# SIMPLIFY: Nested conditionals with early return
|
|
245
|
+
# Before
|
|
246
|
+
def process(data):
|
|
247
|
+
if data is not None:
|
|
248
|
+
if data.is_valid():
|
|
249
|
+
if data.has_permission():
|
|
250
|
+
return do_work(data)
|
|
251
|
+
else:
|
|
252
|
+
raise PermissionError("No permission")
|
|
253
|
+
else:
|
|
254
|
+
raise ValueError("Invalid data")
|
|
255
|
+
else:
|
|
256
|
+
raise TypeError("Data is None")
|
|
257
|
+
# After
|
|
258
|
+
def process(data):
|
|
259
|
+
if data is None:
|
|
260
|
+
raise TypeError("Data is None")
|
|
261
|
+
if not data.is_valid():
|
|
262
|
+
raise ValueError("Invalid data")
|
|
263
|
+
if not data.has_permission():
|
|
264
|
+
raise PermissionError("No permission")
|
|
265
|
+
return do_work(data)
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
### React / JSX
|
|
269
|
+
|
|
270
|
+
```tsx
|
|
271
|
+
// SIMPLIFY: Verbose conditional rendering
|
|
272
|
+
// Before
|
|
273
|
+
function UserBadge({ user }: Props) {
|
|
274
|
+
if (user.isAdmin) {
|
|
275
|
+
return <Badge variant="admin">Admin</Badge>;
|
|
276
|
+
} else {
|
|
277
|
+
return <Badge variant="default">User</Badge>;
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
// After
|
|
281
|
+
function UserBadge({ user }: Props) {
|
|
282
|
+
const variant = user.isAdmin ? 'admin' : 'default';
|
|
283
|
+
const label = user.isAdmin ? 'Admin' : 'User';
|
|
284
|
+
return <Badge variant={variant}>{label}</Badge>;
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
// SIMPLIFY: Prop drilling through intermediate components
|
|
288
|
+
// Before — consider whether context or composition solves this better.
|
|
289
|
+
// This is a judgment call — flag it, don't auto-refactor.
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
## Common Rationalizations
|
|
293
|
+
|
|
294
|
+
| Rationalization | Reality |
|
|
295
|
+
|---|---|
|
|
296
|
+
| "It's working, no need to touch it" | Working code that's hard to read will be hard to fix when it breaks. Simplifying now saves time on every future change. |
|
|
297
|
+
| "Fewer lines is always simpler" | A 1-line nested ternary is not simpler than a 5-line if/else. Simplicity is about comprehension speed, not line count. |
|
|
298
|
+
| "I'll just quickly simplify this unrelated code too" | Unscoped simplification creates noisy diffs and risks regressions in code you didn't intend to change. Stay focused. |
|
|
299
|
+
| "The types make it self-documenting" | Types document structure, not intent. A well-named function explains *why* better than a type signature explains *what*. |
|
|
300
|
+
| "This abstraction might be useful later" | Don't preserve speculative abstractions. If it's not used now, it's complexity without value. Remove it and re-add when needed. |
|
|
301
|
+
| "The original author must have had a reason" | Maybe. Check git blame — apply Chesterton's Fence. But accumulated complexity often has no reason; it's just the residue of iteration under pressure. |
|
|
302
|
+
| "I'll refactor while adding this feature" | Separate refactoring from feature work. Mixed changes are harder to review, revert, and understand in history. |
|
|
303
|
+
|
|
304
|
+
## Red Flags
|
|
305
|
+
|
|
306
|
+
- Simplification that requires modifying tests to pass (you likely changed behavior)
|
|
307
|
+
- "Simplified" code that is longer and harder to follow than the original
|
|
308
|
+
- Renaming things to match your preferences rather than project conventions
|
|
309
|
+
- Removing error handling because "it makes the code cleaner"
|
|
310
|
+
- Simplifying code you don't fully understand
|
|
311
|
+
- Batching many simplifications into one large, hard-to-review commit
|
|
312
|
+
- Refactoring code outside the scope of the current task without being asked
|
|
313
|
+
|
|
314
|
+
## Verification
|
|
315
|
+
|
|
316
|
+
After completing a simplification pass:
|
|
317
|
+
|
|
318
|
+
- [ ] All existing tests pass without modification
|
|
319
|
+
- [ ] Build succeeds with no new warnings
|
|
320
|
+
- [ ] Linter/formatter passes (no style regressions)
|
|
321
|
+
- [ ] Each simplification is a reviewable, incremental change
|
|
322
|
+
- [ ] The diff is clean — no unrelated changes mixed in
|
|
323
|
+
- [ ] Simplified code follows project conventions (checked against CLAUDE.md or equivalent)
|
|
324
|
+
- [ ] No error handling was removed or weakened
|
|
325
|
+
- [ ] No dead code was left behind (unused imports, unreachable branches)
|
|
326
|
+
- [ ] A teammate or review agent would approve the change as a net improvement
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
kind: skill
|
|
2
|
+
name: code-simplification
|
|
3
|
+
title: 代码简化
|
|
4
|
+
description: 以澄清代码为目标进行简化重构。适用于在不改变行为的前提下提升可读性和可维护性,也适用于处理已经积累了不必要复杂度的代码。
|
|
5
|
+
tier: recommended
|
|
6
|
+
audience: default
|
|
7
|
+
stability: stable
|
|
8
|
+
suggests:
|
|
9
|
+
- skill:engineering-principles
|
|
10
|
+
- skill:code-review-and-quality
|
|
11
|
+
platforms:
|
|
12
|
+
- qwen
|
|
13
|
+
- codex
|
|
14
|
+
- qoder
|
|
15
|
+
source:
|
|
16
|
+
upstream: agent-skills
|
|
17
|
+
strategy: adapted
|
|
18
|
+
origin_name: code-simplification
|
|
19
|
+
origin_path: skills/code-simplification/SKILL.md
|
|
20
|
+
origin_id: skill:code-simplification
|
|
21
|
+
notes: 基于上游代码简化能力中文化整理。
|
|
File without changes
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# 代码库导览
|
|
2
|
+
|
|
3
|
+
## 何时使用
|
|
4
|
+
|
|
5
|
+
- 第一次接触一个代码库
|
|
6
|
+
- 要在陌生项目上开始实现、调试或重构
|
|
7
|
+
- 需要快速建立项目全局认知
|
|
8
|
+
- 需要生成后续任务可复用的项目概览
|
|
9
|
+
|
|
10
|
+
## 输入前提
|
|
11
|
+
|
|
12
|
+
- 已确定要探索的仓库或子系统
|
|
13
|
+
- 愿意先理解结构,再进入实现
|
|
14
|
+
- 目标是产出概览,而不是理解一切细节
|
|
15
|
+
|
|
16
|
+
## 执行步骤
|
|
17
|
+
|
|
18
|
+
1. 扫描目录结构和关键配置文件
|
|
19
|
+
2. 定位入口点、路由、模型和主流程
|
|
20
|
+
3. 梳理依赖关系、核心模块和数据流
|
|
21
|
+
4. 识别架构模式、测试策略和项目约定
|
|
22
|
+
5. 输出一份后续开发可复用的项目概览
|
|
23
|
+
|
|
24
|
+
## 成功标准
|
|
25
|
+
|
|
26
|
+
- 能清楚说明项目类型、技术栈、入口点和关键目录
|
|
27
|
+
- 核心模块职责和数据流向是明确的
|
|
28
|
+
- 已记录当前任务相关的关键约定和陷阱
|
|
29
|
+
- 输出足够短,能被后续任务直接消费
|
|
30
|
+
|
|
31
|
+
## 相关原则
|
|
32
|
+
|
|
33
|
+
- 先读 README 和测试,再深挖源码
|
|
34
|
+
- 聚焦当前任务相关区域,不求一次理解全仓库
|
|
35
|
+
- 概览是压缩上下文,不是转述源码
|
|
36
|
+
|
|
37
|
+
## 与其他技能的衔接
|
|
38
|
+
|
|
39
|
+
- 产出的概览可直接供 `context-engineering` 使用
|
|
40
|
+
- 在陌生项目上做需求或实现前,可先接 `brainstorming-and-design` / `spec-driven-development`
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
kind: skill
|
|
2
|
+
name: codebase-onboarding
|
|
3
|
+
title: 代码库导览
|
|
4
|
+
description: 进入陌生代码库或启动新项目时使用。通过目录扫描、入口定位、依赖梳理与模式识别快速建立全局认知,并输出后续开发可复用的精炼上下文。
|
|
5
|
+
tier: recommended
|
|
6
|
+
audience: default
|
|
7
|
+
stability: stable
|
|
8
|
+
suggests:
|
|
9
|
+
- skill:context-engineering
|
|
10
|
+
platforms:
|
|
11
|
+
- qwen
|
|
12
|
+
- codex
|
|
13
|
+
- qoder
|
|
14
|
+
source:
|
|
15
|
+
upstream: agent-skills
|
|
16
|
+
strategy: adapted
|
|
17
|
+
origin_name: codebase-onboarding
|
|
18
|
+
origin_path: skills/codebase-onboarding/SKILL.md
|
|
19
|
+
origin_id: skill:codebase-onboarding
|
|
20
|
+
notes: 延续上游 onboarding 方法,并对齐本仓库上下文压缩习惯。
|
|
File without changes
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# 上下文审计
|
|
2
|
+
|
|
3
|
+
## 何时使用
|
|
4
|
+
|
|
5
|
+
- 会话表现变慢或质量下降,但原因不明时
|
|
6
|
+
- 最近增加了新的 skills、agents、rules 或 MCP 工具时
|
|
7
|
+
- 想知道上下文预算到底被哪些组件占掉时
|
|
8
|
+
- `ctx-health` 提示需要进一步审计时
|
|
9
|
+
|
|
10
|
+
## 输入前提
|
|
11
|
+
|
|
12
|
+
- 已有需要审计的上下文组件集合
|
|
13
|
+
- 目标是量化膨胀来源,而不是泛泛觉得“上下文太长”
|
|
14
|
+
- 接受这是一项治理动作,不是日常每次都要做
|
|
15
|
+
|
|
16
|
+
## 执行步骤
|
|
17
|
+
|
|
18
|
+
1. 盘点各类组件的 token 开销
|
|
19
|
+
2. 按始终需要、按需需要、很少需要进行分类
|
|
20
|
+
3. 识别臃肿、重复和低收益组件
|
|
21
|
+
4. 输出按收益排序的压缩建议
|
|
22
|
+
|
|
23
|
+
## 成功标准
|
|
24
|
+
|
|
25
|
+
- 能明确指出主要 token 消耗点
|
|
26
|
+
- 有可执行的缩减建议,而不是只给感受判断
|
|
27
|
+
- 可估算压缩前后的上下文开销差异
|
|
28
|
+
|
|
29
|
+
## 相关原则
|
|
30
|
+
|
|
31
|
+
- 量化优先于感觉
|
|
32
|
+
- 上下文不是越多越好,而是越准越好
|
|
33
|
+
- 审计的目标是提升有效信号密度
|
|
34
|
+
|
|
35
|
+
## 与其他技能的衔接
|
|
36
|
+
|
|
37
|
+
- 是 `ctx-health` 的深度版本
|
|
38
|
+
- 与 `context-engineering` 配合,用于长期治理
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
kind: skill
|
|
2
|
+
name: context-budget-audit
|
|
3
|
+
title: 上下文审计
|
|
4
|
+
description: 审计代理、skills、rules 与说明文档对上下文窗口的占用,识别膨胀和冗余项,并产出按优先级排序的 token 节省建议。适用于会话质量下降、组件持续增长或需要核查上下文余量时。
|
|
5
|
+
tier: optional
|
|
6
|
+
audience: advanced
|
|
7
|
+
stability: evolving
|
|
8
|
+
requires:
|
|
9
|
+
- skill:context-engineering
|
|
10
|
+
platforms:
|
|
11
|
+
- qwen
|
|
12
|
+
- codex
|
|
13
|
+
- qoder
|
|
14
|
+
source:
|
|
15
|
+
upstream: toolkit-original
|
|
16
|
+
strategy: curated
|
|
17
|
+
notes: 本仓库针对长会话治理补充的内容运维能力。
|
|
File without changes
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# 上下文工程
|
|
2
|
+
|
|
3
|
+
## 何时使用
|
|
4
|
+
|
|
5
|
+
- 开始新的编码会话或新子任务时
|
|
6
|
+
- 输出质量下降,开始出现幻觉、忽略约定或跑偏
|
|
7
|
+
- 任务切换导致上下文混杂时
|
|
8
|
+
- 需要为代理准备最小但足够的输入材料时
|
|
9
|
+
|
|
10
|
+
## 方法原则
|
|
11
|
+
|
|
12
|
+
- 复杂任务先校准目标、边界和验证方式,再装载上下文
|
|
13
|
+
- 最小充分上下文优先于“大而全”材料堆叠
|
|
14
|
+
- 上下文装载要服务当前任务,不为可能发生的旁支需求提前铺料
|
|
15
|
+
- 一旦任务阶段变化,就主动压缩和重建上下文,避免 drift
|
|
16
|
+
|
|
17
|
+
## 输入前提
|
|
18
|
+
|
|
19
|
+
- 已知道当前任务真正需要哪些信息
|
|
20
|
+
- 愿意主动裁剪无关上下文
|
|
21
|
+
- 接受规则文件、规格、源码、错误输出有不同优先级
|
|
22
|
+
|
|
23
|
+
## 执行步骤
|
|
24
|
+
|
|
25
|
+
1. 先校准:明确目标、非目标、风险点和需要的验证证据
|
|
26
|
+
2. 先装载稳定规则:规则文件、长期约定、关键边界
|
|
27
|
+
3. 再装载任务级上下文:规格片段、相关源码、测试、错误输出
|
|
28
|
+
4. 控制上下文体积,只保留当前任务需要的信息
|
|
29
|
+
5. 任务切换或阶段推进时主动压缩总结,清理旧上下文
|
|
30
|
+
6. 发现上下文冲突、缺口或陈旧信息时,显式暴露而不是猜测
|
|
31
|
+
|
|
32
|
+
## 成功标准
|
|
33
|
+
|
|
34
|
+
- 开始执行前,代理已经知道目标、边界和验证方式
|
|
35
|
+
- 代理看到的是当前任务需要的最小充分上下文
|
|
36
|
+
- 规则、规格、源码和错误信息的层级清晰
|
|
37
|
+
- 上下文切换不会把旧问题带入新任务
|
|
38
|
+
- 遇到冲突时能清楚指出需要人类决策的点
|
|
39
|
+
- 不会因为上下文膨胀而偏离当前任务
|
|
40
|
+
|
|
41
|
+
## 相关原则
|
|
42
|
+
|
|
43
|
+
- 复杂任务谨慎优先于求快
|
|
44
|
+
- 少而准,比多而杂更有效
|
|
45
|
+
- 目标导向决定装载顺序
|
|
46
|
+
- 外科式修改也适用于上下文,只带入要改的那一小块
|
|
47
|
+
- 规格和规则优先于猜测
|
|
48
|
+
- 压缩上下文是持续动作,不是最后补救
|
|
49
|
+
|
|
50
|
+
## 与其他技能的衔接
|
|
51
|
+
|
|
52
|
+
- 与 `engineering-principles` 配合,在进入实现前先校准工作方式
|
|
53
|
+
- 与 `codebase-onboarding` 配合,先建立地图再装载局部上下文
|
|
54
|
+
- 与 `context-budget-audit` 配合,检查上下文是否膨胀
|
|
55
|
+
- 为几乎所有实现和审查技能提供前置支持
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
kind: skill
|
|
2
|
+
name: context-engineering
|
|
3
|
+
title: 上下文工程
|
|
4
|
+
description: 优化代理的上下文配置。适用于新会话启动、输出质量下降、任务切换,或需要为项目整理规则文件与上下文装配方式时。
|
|
5
|
+
tier: recommended
|
|
6
|
+
audience: advanced
|
|
7
|
+
stability: stable
|
|
8
|
+
suggests:
|
|
9
|
+
- skill:using-agent-skills
|
|
10
|
+
platforms:
|
|
11
|
+
- qwen
|
|
12
|
+
- codex
|
|
13
|
+
- qoder
|
|
14
|
+
source:
|
|
15
|
+
upstream: superpowers
|
|
16
|
+
strategy: inspired
|
|
17
|
+
notes: 吸收上游对上下文组织的经验,并结合本仓库上下文管理原则整理。
|
|
File without changes
|