agentplane 0.3.4 → 0.3.6
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 +103 -75
- package/assets/AGENTS.md +4 -2
- package/bin/dist-guard.js +13 -3
- package/bin/runtime-watch.d.ts +1 -0
- package/bin/runtime-watch.js +22 -5
- package/bin/stale-dist-policy.js +9 -2
- package/dist/.build-manifest.json +220 -790
- package/dist/adapters/task-backend/task-backend-adapter.d.ts +1 -1
- package/dist/adapters/task-backend/task-backend-adapter.d.ts.map +1 -1
- package/dist/adapters/task-backend/task-backend-adapter.js +5 -2
- package/dist/backends/task-backend/local-backend.d.ts +13 -0
- package/dist/backends/task-backend/local-backend.d.ts.map +1 -1
- package/dist/backends/task-backend/local-backend.js +17 -0
- package/dist/backends/task-backend/redmine-backend.d.ts +18 -0
- package/dist/backends/task-backend/redmine-backend.d.ts.map +1 -1
- package/dist/backends/task-backend/redmine-backend.js +35 -25
- package/dist/backends/task-backend/shared/types.d.ts +20 -0
- package/dist/backends/task-backend/shared/types.d.ts.map +1 -1
- package/dist/backends/task-backend/shared.d.ts +1 -1
- package/dist/backends/task-backend/shared.d.ts.map +1 -1
- package/dist/backends/task-backend.d.ts +1 -1
- package/dist/backends/task-backend.d.ts.map +1 -1
- package/dist/backends/task-backend.test-helpers.d.ts +4 -0
- package/dist/backends/task-backend.test-helpers.d.ts.map +1 -0
- package/dist/backends/task-backend.test-helpers.js +33 -0
- package/dist/cli/bootstrap-guide.d.ts.map +1 -1
- package/dist/cli/bootstrap-guide.js +1 -0
- package/dist/cli/command-guide.d.ts.map +1 -1
- package/dist/cli/command-guide.js +3 -2
- package/dist/cli/reason-codes.d.ts.map +1 -1
- package/dist/cli/reason-codes.js +30 -0
- package/dist/cli/run-cli/command-catalog/core.d.ts +3 -0
- package/dist/cli/run-cli/command-catalog/core.d.ts.map +1 -0
- package/dist/cli/run-cli/command-catalog/core.js +137 -0
- package/dist/cli/run-cli/command-catalog/lifecycle.d.ts +3 -0
- package/dist/cli/run-cli/command-catalog/lifecycle.d.ts.map +1 -0
- package/dist/cli/run-cli/command-catalog/lifecycle.js +52 -0
- package/dist/cli/run-cli/command-catalog/project.d.ts +3 -0
- package/dist/cli/run-cli/command-catalog/project.d.ts.map +1 -0
- package/dist/cli/run-cli/command-catalog/project.js +78 -0
- package/dist/cli/run-cli/command-catalog/shared.d.ts +19 -0
- package/dist/cli/run-cli/command-catalog/shared.d.ts.map +1 -0
- package/dist/cli/run-cli/command-catalog/shared.js +9 -0
- package/dist/cli/run-cli/command-catalog/task.d.ts +3 -0
- package/dist/cli/run-cli/command-catalog/task.d.ts.map +1 -0
- package/dist/cli/run-cli/command-catalog/task.js +85 -0
- package/dist/cli/run-cli/command-catalog.d.ts +3 -18
- package/dist/cli/run-cli/command-catalog.d.ts.map +1 -1
- package/dist/cli/run-cli/command-catalog.js +8 -337
- package/dist/cli/run-cli/commands/ide.d.ts.map +1 -1
- package/dist/cli/run-cli/commands/ide.js +64 -2
- package/dist/cli/run-cli/commands/init/ui.d.ts.map +1 -1
- package/dist/cli/run-cli/commands/init/ui.js +33 -13
- package/dist/cli/run-cli.core.pr-flow.test-helpers.d.ts +3 -0
- package/dist/cli/run-cli.core.pr-flow.test-helpers.d.ts.map +1 -0
- package/dist/cli/run-cli.core.pr-flow.test-helpers.js +41 -0
- package/dist/cli/run-cli.core.tasks.test-helpers.d.ts +2 -0
- package/dist/cli/run-cli.core.tasks.test-helpers.d.ts.map +1 -0
- package/dist/cli/run-cli.core.tasks.test-helpers.js +6 -0
- package/dist/cli/run-cli.test-helpers.d.ts +3 -0
- package/dist/cli/run-cli.test-helpers.d.ts.map +1 -1
- package/dist/cli/run-cli.test-helpers.js +138 -6
- package/dist/commands/commit.spec.d.ts.map +1 -1
- package/dist/commands/commit.spec.js +2 -2
- package/dist/commands/doctor/runtime.d.ts.map +1 -1
- package/dist/commands/doctor/runtime.js +3 -6
- package/dist/commands/doctor/workspace.d.ts +4 -1
- package/dist/commands/doctor/workspace.d.ts.map +1 -1
- package/dist/commands/doctor/workspace.js +87 -4
- package/dist/commands/doctor.run.d.ts.map +1 -1
- package/dist/commands/doctor.run.js +8 -1
- package/dist/commands/guard/commit.command.js +1 -1
- package/dist/commands/guard/impl/allow.d.ts +5 -0
- package/dist/commands/guard/impl/allow.d.ts.map +1 -1
- package/dist/commands/guard/impl/allow.js +15 -10
- package/dist/commands/guard/impl/commands.d.ts.map +1 -1
- package/dist/commands/guard/impl/commands.js +137 -18
- package/dist/commands/guard/impl/comment-commit.d.ts.map +1 -1
- package/dist/commands/guard/impl/comment-commit.js +2 -0
- package/dist/commands/hooks/index.d.ts.map +1 -1
- package/dist/commands/hooks/index.js +8 -35
- package/dist/commands/recipes/impl/apply.d.ts +4 -0
- package/dist/commands/recipes/impl/apply.d.ts.map +1 -1
- package/dist/commands/recipes/impl/apply.js +34 -0
- package/dist/commands/recipes/impl/commands/explain.d.ts.map +1 -1
- package/dist/commands/recipes/impl/commands/explain.js +70 -11
- package/dist/commands/recipes/impl/commands/info.d.ts.map +1 -1
- package/dist/commands/recipes/impl/commands/info.js +24 -12
- package/dist/commands/recipes/impl/commands/install.d.ts.map +1 -1
- package/dist/commands/recipes/impl/commands/install.js +32 -36
- package/dist/commands/recipes/impl/commands/list.d.ts.map +1 -1
- package/dist/commands/recipes/impl/commands/list.js +7 -4
- package/dist/commands/recipes/impl/commands/remove.d.ts.map +1 -1
- package/dist/commands/recipes/impl/commands/remove.js +9 -11
- package/dist/commands/recipes/impl/constants.d.ts +2 -0
- package/dist/commands/recipes/impl/constants.d.ts.map +1 -1
- package/dist/commands/recipes/impl/constants.js +2 -0
- package/dist/commands/recipes/impl/manifest.d.ts.map +1 -1
- package/dist/commands/recipes/impl/manifest.js +219 -23
- package/dist/commands/recipes/impl/normalize.d.ts +3 -0
- package/dist/commands/recipes/impl/normalize.d.ts.map +1 -1
- package/dist/commands/recipes/impl/normalize.js +28 -24
- package/dist/commands/recipes/impl/paths.d.ts +9 -0
- package/dist/commands/recipes/impl/paths.d.ts.map +1 -1
- package/dist/commands/recipes/impl/paths.js +10 -1
- package/dist/commands/recipes/impl/project-installed-recipes.d.ts +7 -0
- package/dist/commands/recipes/impl/project-installed-recipes.d.ts.map +1 -0
- package/dist/commands/recipes/impl/project-installed-recipes.js +102 -0
- package/dist/commands/recipes/impl/resolver.d.ts +20 -0
- package/dist/commands/recipes/impl/resolver.d.ts.map +1 -0
- package/dist/commands/recipes/impl/resolver.js +220 -0
- package/dist/commands/recipes/impl/scenario.d.ts.map +1 -1
- package/dist/commands/recipes/impl/scenario.js +40 -11
- package/dist/commands/recipes/impl/types.d.ts +145 -16
- package/dist/commands/recipes/impl/types.d.ts.map +1 -1
- package/dist/commands/recipes/install.spec.d.ts.map +1 -1
- package/dist/commands/recipes/install.spec.js +3 -2
- package/dist/commands/recipes.d.ts +6 -4
- package/dist/commands/recipes.d.ts.map +1 -1
- package/dist/commands/recipes.js +5 -3
- package/dist/commands/recipes.test-helpers.d.ts +185 -0
- package/dist/commands/recipes.test-helpers.d.ts.map +1 -0
- package/dist/commands/recipes.test-helpers.js +339 -0
- package/dist/commands/scenario/impl/commands.d.ts.map +1 -1
- package/dist/commands/scenario/impl/commands.js +192 -336
- package/dist/commands/scenario/info.command.d.ts.map +1 -1
- package/dist/commands/scenario/info.command.js +7 -2
- package/dist/commands/scenario/list.command.js +2 -2
- package/dist/commands/scenario/run.command.d.ts.map +1 -1
- package/dist/commands/scenario/run.command.js +7 -2
- package/dist/commands/shared/git-context.d.ts +1 -0
- package/dist/commands/shared/git-context.d.ts.map +1 -1
- package/dist/commands/shared/git-context.js +4 -0
- package/dist/commands/shared/reconcile-check.d.ts.map +1 -1
- package/dist/commands/shared/reconcile-check.js +77 -2
- package/dist/commands/shared/task-backend.d.ts +5 -0
- package/dist/commands/shared/task-backend.d.ts.map +1 -1
- package/dist/commands/shared/task-backend.js +24 -0
- package/dist/commands/shared/task-store.d.ts +32 -1
- package/dist/commands/shared/task-store.d.ts.map +1 -1
- package/dist/commands/shared/task-store.js +166 -42
- package/dist/commands/task/block.d.ts.map +1 -1
- package/dist/commands/task/block.js +46 -29
- package/dist/commands/task/close-duplicate.d.ts.map +1 -1
- package/dist/commands/task/close-duplicate.js +12 -37
- package/dist/commands/task/close-noop.d.ts.map +1 -1
- package/dist/commands/task/close-noop.js +12 -30
- package/dist/commands/task/close-shared.d.ts +14 -0
- package/dist/commands/task/close-shared.d.ts.map +1 -0
- package/dist/commands/task/close-shared.js +76 -0
- package/dist/commands/task/comment.d.ts.map +1 -1
- package/dist/commands/task/comment.js +35 -17
- package/dist/commands/task/doc-set.command.d.ts +2 -1
- package/dist/commands/task/doc-set.command.d.ts.map +1 -1
- package/dist/commands/task/doc-set.command.js +36 -4
- package/dist/commands/task/doc-template.d.ts.map +1 -1
- package/dist/commands/task/doc-template.js +2 -7
- package/dist/commands/task/doc.command.js +1 -1
- package/dist/commands/task/doc.d.ts +2 -1
- package/dist/commands/task/doc.d.ts.map +1 -1
- package/dist/commands/task/doc.js +123 -71
- package/dist/commands/task/export.d.ts.map +1 -1
- package/dist/commands/task/export.js +4 -4
- package/dist/commands/task/finish.d.ts.map +1 -1
- package/dist/commands/task/finish.js +141 -78
- package/dist/commands/task/migrate-doc.d.ts.map +1 -1
- package/dist/commands/task/migrate-doc.js +15 -11
- package/dist/commands/task/plan-set.command.js +1 -1
- package/dist/commands/task/plan.command.d.ts +8 -0
- package/dist/commands/task/plan.command.d.ts.map +1 -0
- package/dist/commands/task/plan.command.js +37 -0
- package/dist/commands/task/plan.d.ts.map +1 -1
- package/dist/commands/task/plan.js +190 -93
- package/dist/commands/task/set-status.command.d.ts.map +1 -1
- package/dist/commands/task/set-status.command.js +1 -1
- package/dist/commands/task/set-status.d.ts.map +1 -1
- package/dist/commands/task/set-status.js +40 -3
- package/dist/commands/task/shared/docs.d.ts +1 -0
- package/dist/commands/task/shared/docs.d.ts.map +1 -1
- package/dist/commands/task/shared/docs.js +7 -0
- package/dist/commands/task/shared/transitions.d.ts +0 -2
- package/dist/commands/task/shared/transitions.d.ts.map +1 -1
- package/dist/commands/task/shared/transitions.js +0 -6
- package/dist/commands/task/shared.d.ts +2 -2
- package/dist/commands/task/shared.d.ts.map +1 -1
- package/dist/commands/task/shared.js +2 -2
- package/dist/commands/task/start.d.ts.map +1 -1
- package/dist/commands/task/start.js +88 -63
- package/dist/commands/task/task.command.d.ts +8 -0
- package/dist/commands/task/task.command.d.ts.map +1 -0
- package/dist/commands/task/task.command.js +71 -0
- package/dist/commands/task/verify-command-shared.d.ts +16 -0
- package/dist/commands/task/verify-command-shared.d.ts.map +1 -0
- package/dist/commands/task/verify-command-shared.js +53 -0
- package/dist/commands/task/verify-ok.command.d.ts +2 -6
- package/dist/commands/task/verify-ok.command.d.ts.map +1 -1
- package/dist/commands/task/verify-ok.command.js +8 -50
- package/dist/commands/task/verify-record.d.ts.map +1 -1
- package/dist/commands/task/verify-record.js +119 -140
- package/dist/commands/task/verify-rework.command.d.ts +2 -6
- package/dist/commands/task/verify-rework.command.d.ts.map +1 -1
- package/dist/commands/task/verify-rework.command.js +8 -50
- package/dist/commands/verify.spec.d.ts.map +1 -1
- package/dist/commands/verify.spec.js +3 -12
- package/dist/policy/rules/allowlist.d.ts.map +1 -1
- package/dist/policy/rules/allowlist.js +13 -4
- package/dist/policy/rules/protected-paths.d.ts.map +1 -1
- package/dist/policy/rules/protected-paths.js +6 -1
- package/dist/ports/task-backend-port.d.ts +1 -1
- package/dist/ports/task-backend-port.d.ts.map +1 -1
- package/dist/shared/agent-emoji.d.ts.map +1 -1
- package/dist/shared/protected-paths.d.ts +7 -0
- package/dist/shared/protected-paths.d.ts.map +1 -1
- package/dist/shared/protected-paths.js +26 -10
- package/dist/shared/repo-cli-version.d.ts.map +1 -1
- package/dist/shared/repo-cli-version.js +9 -3
- package/package.json +2 -2
|
@@ -1,339 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { taskNewSpec } from "../../commands/task/new.spec.js";
|
|
6
|
-
import { taskListSpec } from "../../commands/task/list.spec.js";
|
|
7
|
-
import { taskNextSpec } from "../../commands/task/next.spec.js";
|
|
8
|
-
import { taskSearchSpec } from "../../commands/task/search.spec.js";
|
|
9
|
-
import { taskShowSpec } from "../../commands/task/show.spec.js";
|
|
10
|
-
import { taskAddSpec } from "../../commands/task/add.command.js";
|
|
11
|
-
import { taskUpdateSpec } from "../../commands/task/update.command.js";
|
|
12
|
-
import { taskCommentSpec } from "../../commands/task/comment.command.js";
|
|
13
|
-
import { taskSetStatusSpec } from "../../commands/task/set-status.command.js";
|
|
14
|
-
import { taskDocSpec } from "../../commands/task/doc.command.js";
|
|
15
|
-
import { taskDocShowSpec } from "../../commands/task/doc-show.command.js";
|
|
16
|
-
import { taskDocSetSpec } from "../../commands/task/doc-set.command.js";
|
|
17
|
-
import { taskScrubSpec } from "../../commands/task/scrub.command.js";
|
|
18
|
-
import { taskScaffoldSpec } from "../../commands/task/scaffold.command.js";
|
|
19
|
-
import { taskNormalizeSpec } from "../../commands/task/normalize.command.js";
|
|
20
|
-
import { taskExportSpec } from "../../commands/task/export.command.js";
|
|
21
|
-
import { taskLintSpec } from "../../commands/task/lint.command.js";
|
|
22
|
-
import { taskMigrateSpec } from "../../commands/task/migrate.command.js";
|
|
23
|
-
import { taskMigrateDocSpec } from "../../commands/task/migrate-doc.command.js";
|
|
24
|
-
import { taskDeriveSpec } from "../../commands/task/derive.command.js";
|
|
25
|
-
import { taskCloseDuplicateSpec } from "../../commands/task/close-duplicate.command.js";
|
|
26
|
-
import { taskCloseNoopSpec } from "../../commands/task/close-noop.command.js";
|
|
27
|
-
import { taskStartReadySpec } from "../../commands/task/start-ready.command.js";
|
|
28
|
-
import { taskPlanSetSpec } from "../../commands/task/plan-set.command.js";
|
|
29
|
-
import { taskPlanApproveSpec } from "../../commands/task/plan-approve.command.js";
|
|
30
|
-
import { taskPlanRejectSpec } from "../../commands/task/plan-reject.command.js";
|
|
31
|
-
import { taskVerifySpec } from "../../commands/task/verify.command.js";
|
|
32
|
-
import { taskVerifyOkSpec } from "../../commands/task/verify-ok.command.js";
|
|
33
|
-
import { taskVerifyReworkSpec } from "../../commands/task/verify-rework.command.js";
|
|
34
|
-
import { taskVerifyShowSpec } from "../../commands/task/verify-show.command.js";
|
|
35
|
-
import { taskRebuildIndexSpec } from "../../commands/task/rebuild-index.command.js";
|
|
36
|
-
import { workStartSpec } from "../../commands/branch/work-start.command.js";
|
|
37
|
-
import { branchBaseClearSpec, branchBaseExplainSpec, branchBaseGetSpec, branchBaseSetSpec, branchBaseSpec, } from "../../commands/branch/base.command.js";
|
|
38
|
-
import { branchStatusSpec } from "../../commands/branch/status.command.js";
|
|
39
|
-
import { branchRemoveSpec } from "../../commands/branch/remove.command.js";
|
|
40
|
-
import { recipesInstallSpec } from "../../commands/recipes/install.spec.js";
|
|
41
|
-
import { recipesListSpec } from "../../commands/recipes/list.command.js";
|
|
42
|
-
import { recipesListRemoteSpec } from "../../commands/recipes/list-remote.command.js";
|
|
43
|
-
import { recipesInfoSpec } from "../../commands/recipes/info.command.js";
|
|
44
|
-
import { recipesExplainSpec } from "../../commands/recipes/explain.command.js";
|
|
45
|
-
import { recipesRemoveSpec } from "../../commands/recipes/remove.command.js";
|
|
46
|
-
import { recipesCachePruneSpec } from "../../commands/recipes/cache-prune.command.js";
|
|
47
|
-
import { recipesSpec } from "../../commands/recipes/recipes.command.js";
|
|
48
|
-
import { recipesCacheSpec } from "../../commands/recipes/cache.command.js";
|
|
49
|
-
import { upgradeSpec } from "../../commands/upgrade.command.js";
|
|
50
|
-
import { backendSpec, backendSyncSpec } from "../../commands/backend/sync.command.js";
|
|
51
|
-
import { syncSpec } from "../../commands/sync.command.js";
|
|
52
|
-
import { scenarioListSpec } from "../../commands/scenario/list.command.js";
|
|
53
|
-
import { scenarioInfoSpec } from "../../commands/scenario/info.command.js";
|
|
54
|
-
import { scenarioRunSpec } from "../../commands/scenario/run.command.js";
|
|
55
|
-
import { scenarioSpec } from "../../commands/scenario/scenario.command.js";
|
|
56
|
-
import { prCheckSpec, prNoteSpec, prOpenSpec, prSpec, prUpdateSpec, } from "../../commands/pr/pr.command.js";
|
|
57
|
-
import { integrateSpec } from "../../commands/integrate.command.js";
|
|
58
|
-
import { commitSpec } from "../../commands/commit.spec.js";
|
|
59
|
-
import { startSpec } from "../../commands/start.spec.js";
|
|
60
|
-
import { blockSpec } from "../../commands/block.spec.js";
|
|
61
|
-
import { verifySpec } from "../../commands/verify.spec.js";
|
|
62
|
-
import { finishSpec } from "../../commands/finish.spec.js";
|
|
63
|
-
import { readySpec } from "../../commands/ready.command.js";
|
|
64
|
-
import { doctorSpec } from "../../commands/doctor.spec.js";
|
|
65
|
-
import { workflowSpec } from "../../commands/workflow.command.js";
|
|
66
|
-
import { workflowBuildSpec } from "../../commands/workflow-build.command.js";
|
|
67
|
-
import { workflowRestoreSpec } from "../../commands/workflow-restore.command.js";
|
|
68
|
-
import { workflowDebugSpec, workflowLandSpec, workflowSyncSpec, } from "../../commands/workflow-playbook.command.js";
|
|
69
|
-
import { docsCliSpec } from "../../commands/docs/cli.command.js";
|
|
70
|
-
import { runtimeExplainSpec, runtimeSpec } from "../../commands/runtime.command.js";
|
|
71
|
-
import { hooksSpec } from "../../commands/hooks/hooks.command.js";
|
|
72
|
-
import { hooksInstallSpec } from "../../commands/hooks/install.command.js";
|
|
73
|
-
import { hooksUninstallSpec } from "../../commands/hooks/uninstall.command.js";
|
|
74
|
-
import { hooksRunSpec } from "../../commands/hooks/run.command.js";
|
|
75
|
-
import { cleanupMergedSpec, cleanupSpec } from "../../commands/cleanup/merged.command.js";
|
|
76
|
-
import { guardSpec } from "../../commands/guard/guard.command.js";
|
|
77
|
-
import { guardCleanSpec } from "../../commands/guard/clean.command.js";
|
|
78
|
-
import { guardSuggestAllowSpec } from "../../commands/guard/suggest-allow.command.js";
|
|
79
|
-
import { guardCommitSpec } from "../../commands/guard/commit.command.js";
|
|
80
|
-
import { releaseSpec } from "../../commands/release/release.command.js";
|
|
81
|
-
import { releasePlanSpec } from "../../commands/release/plan.command.js";
|
|
82
|
-
import { releaseApplySpec } from "../../commands/release/apply.command.js";
|
|
83
|
-
function entry(spec, load, meta) {
|
|
84
|
-
return {
|
|
85
|
-
spec: spec,
|
|
86
|
-
load: (deps) => load(deps),
|
|
87
|
-
needsProject: meta?.needsProject ?? true,
|
|
88
|
-
needsConfig: meta?.needsConfig ?? meta?.needsProject ?? true,
|
|
89
|
-
needsTaskContext: meta?.needsTaskContext ?? true,
|
|
90
|
-
};
|
|
91
|
-
}
|
|
1
|
+
import { CORE_COMMANDS } from "./command-catalog/core.js";
|
|
2
|
+
import { LIFECYCLE_COMMANDS } from "./command-catalog/lifecycle.js";
|
|
3
|
+
import { PROJECT_COMMANDS } from "./command-catalog/project.js";
|
|
4
|
+
import { TASK_COMMANDS } from "./command-catalog/task.js";
|
|
92
5
|
export const COMMANDS = [
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
}),
|
|
98
|
-
entry(upgradeSpec, () => import("../../commands/upgrade.command.js").then((m) => m.runUpgrade), {
|
|
99
|
-
needsProject: false,
|
|
100
|
-
needsConfig: false,
|
|
101
|
-
needsTaskContext: false,
|
|
102
|
-
}),
|
|
103
|
-
entry(releaseSpec, () => import("../../commands/release/release.command.js").then((m) => m.runRelease), {
|
|
104
|
-
needsProject: false,
|
|
105
|
-
needsConfig: false,
|
|
106
|
-
needsTaskContext: false,
|
|
107
|
-
}),
|
|
108
|
-
entry(releasePlanSpec, () => import("../../commands/release/plan.command.js").then((m) => m.runReleasePlan), {
|
|
109
|
-
needsProject: true,
|
|
110
|
-
needsConfig: false,
|
|
111
|
-
needsTaskContext: false,
|
|
112
|
-
}),
|
|
113
|
-
entry(releaseApplySpec, () => import("../../commands/release/apply.command.js").then((m) => m.runReleaseApply), {
|
|
114
|
-
needsProject: true,
|
|
115
|
-
needsConfig: false,
|
|
116
|
-
needsTaskContext: false,
|
|
117
|
-
}),
|
|
118
|
-
entry(quickstartSpec, () => import("./commands/core.js").then((m) => m.runQuickstart), {
|
|
119
|
-
needsProject: false,
|
|
120
|
-
needsConfig: false,
|
|
121
|
-
needsTaskContext: false,
|
|
122
|
-
}),
|
|
123
|
-
entry(preflightSpec, () => import("./commands/core.js").then((m) => m.runPreflight), {
|
|
124
|
-
needsProject: false,
|
|
125
|
-
needsConfig: false,
|
|
126
|
-
needsTaskContext: false,
|
|
127
|
-
}),
|
|
128
|
-
entry(runtimeSpec, () => import("../../commands/runtime.command.js").then((m) => m.runRuntime), {
|
|
129
|
-
needsProject: false,
|
|
130
|
-
needsConfig: false,
|
|
131
|
-
needsTaskContext: false,
|
|
132
|
-
}),
|
|
133
|
-
entry(runtimeExplainSpec, () => import("../../commands/runtime.command.js").then((m) => m.runRuntimeExplain), {
|
|
134
|
-
needsProject: false,
|
|
135
|
-
needsConfig: false,
|
|
136
|
-
needsTaskContext: false,
|
|
137
|
-
}),
|
|
138
|
-
entry(roleSpec, () => import("./commands/core.js").then((m) => m.runRole), {
|
|
139
|
-
needsProject: false,
|
|
140
|
-
needsConfig: false,
|
|
141
|
-
needsTaskContext: false,
|
|
142
|
-
}),
|
|
143
|
-
entry(agentsSpec, (deps) => import("./commands/core.js").then((m) => m.makeRunAgentsHandler(deps)), {
|
|
144
|
-
needsProject: true,
|
|
145
|
-
needsConfig: false,
|
|
146
|
-
needsTaskContext: false,
|
|
147
|
-
}),
|
|
148
|
-
entry(configShowSpec, (deps) => import("./commands/config.js").then((m) => m.makeRunConfigShowHandler(deps)), {
|
|
149
|
-
needsProject: true,
|
|
150
|
-
needsConfig: true,
|
|
151
|
-
needsTaskContext: false,
|
|
152
|
-
}),
|
|
153
|
-
entry(configSetSpec, (deps) => import("./commands/config.js").then((m) => m.makeRunConfigSetHandler(deps)), {
|
|
154
|
-
needsProject: true,
|
|
155
|
-
needsConfig: true,
|
|
156
|
-
needsTaskContext: false,
|
|
157
|
-
}),
|
|
158
|
-
entry(modeGetSpec, (deps) => import("./commands/config.js").then((m) => m.makeRunModeGetHandler(deps)), {
|
|
159
|
-
needsProject: true,
|
|
160
|
-
needsConfig: true,
|
|
161
|
-
needsTaskContext: false,
|
|
162
|
-
}),
|
|
163
|
-
entry(modeSetSpec, (deps) => import("./commands/config.js").then((m) => m.makeRunModeSetHandler(deps)), {
|
|
164
|
-
needsProject: true,
|
|
165
|
-
needsConfig: true,
|
|
166
|
-
needsTaskContext: false,
|
|
167
|
-
}),
|
|
168
|
-
entry(profileSetSpec, (deps) => import("./commands/config.js").then((m) => m.makeRunProfileSetHandler(deps)), {
|
|
169
|
-
needsProject: true,
|
|
170
|
-
needsConfig: true,
|
|
171
|
-
needsTaskContext: false,
|
|
172
|
-
}),
|
|
173
|
-
entry(ideSyncSpec, (deps) => import("./commands/ide.js").then((m) => m.makeRunIdeSyncHandler(deps)), {
|
|
174
|
-
needsProject: true,
|
|
175
|
-
needsConfig: true,
|
|
176
|
-
needsTaskContext: false,
|
|
177
|
-
}),
|
|
178
|
-
entry(doctorSpec, () => import("../../commands/doctor.run.js").then((m) => m.runDoctor), {
|
|
179
|
-
needsProject: true,
|
|
180
|
-
needsConfig: false,
|
|
181
|
-
needsTaskContext: false,
|
|
182
|
-
}),
|
|
183
|
-
entry(workflowSpec, () => import("../../commands/workflow.command.js").then((m) => m.runWorkflow), {
|
|
184
|
-
needsProject: false,
|
|
185
|
-
needsConfig: false,
|
|
186
|
-
needsTaskContext: false,
|
|
187
|
-
}),
|
|
188
|
-
entry(workflowBuildSpec, () => import("../../commands/workflow-build.command.js").then((m) => m.runWorkflowBuild), {
|
|
189
|
-
needsProject: true,
|
|
190
|
-
needsConfig: false,
|
|
191
|
-
needsTaskContext: false,
|
|
192
|
-
}),
|
|
193
|
-
entry(workflowRestoreSpec, () => import("../../commands/workflow-restore.command.js").then((m) => m.runWorkflowRestore), {
|
|
194
|
-
needsProject: true,
|
|
195
|
-
needsConfig: false,
|
|
196
|
-
needsTaskContext: false,
|
|
197
|
-
}),
|
|
198
|
-
entry(workflowDebugSpec, () => import("../../commands/workflow-playbook.command.js").then((m) => m.runWorkflowDebug), {
|
|
199
|
-
needsProject: true,
|
|
200
|
-
needsConfig: false,
|
|
201
|
-
needsTaskContext: false,
|
|
202
|
-
}),
|
|
203
|
-
entry(workflowSyncSpec, () => import("../../commands/workflow-playbook.command.js").then((m) => m.runWorkflowSync), {
|
|
204
|
-
needsProject: true,
|
|
205
|
-
needsConfig: false,
|
|
206
|
-
needsTaskContext: false,
|
|
207
|
-
}),
|
|
208
|
-
entry(workflowLandSpec, () => import("../../commands/workflow-playbook.command.js").then((m) => m.runWorkflowLand), {
|
|
209
|
-
needsProject: true,
|
|
210
|
-
needsConfig: false,
|
|
211
|
-
needsTaskContext: false,
|
|
212
|
-
}),
|
|
213
|
-
entry(taskListSpec, (deps) => import("../../commands/task/list.run.js").then((m) => m.makeRunTaskListHandler(deps.getCtx))),
|
|
214
|
-
entry(taskNextSpec, (deps) => import("../../commands/task/next.run.js").then((m) => m.makeRunTaskNextHandler(deps.getCtx))),
|
|
215
|
-
entry(taskSearchSpec, (deps) => import("../../commands/task/search.run.js").then((m) => m.makeRunTaskSearchHandler(deps.getCtx))),
|
|
216
|
-
entry(taskShowSpec, (deps) => import("../../commands/task/show.run.js").then((m) => m.makeRunTaskShowHandler(deps.getCtx))),
|
|
217
|
-
entry(taskNewSpec, (deps) => import("../../commands/task/new.command.js").then((m) => m.makeRunTaskNewHandler(deps.getCtx))),
|
|
218
|
-
entry(taskDeriveSpec, (deps) => import("../../commands/task/derive.command.js").then((m) => m.makeRunTaskDeriveHandler(deps.getCtx))),
|
|
219
|
-
entry(taskCloseDuplicateSpec, (deps) => import("../../commands/task/close-duplicate.command.js").then((m) => m.makeRunTaskCloseDuplicateHandler(deps.getCtx))),
|
|
220
|
-
entry(taskStartReadySpec, (deps) => import("../../commands/task/start-ready.command.js").then((m) => m.makeRunTaskStartReadyHandler(deps.getCtx))),
|
|
221
|
-
entry(taskCloseNoopSpec, (deps) => import("../../commands/task/close-noop.command.js").then((m) => m.makeRunTaskCloseNoopHandler(deps.getCtx))),
|
|
222
|
-
entry(taskAddSpec, (deps) => import("../../commands/task/add.command.js").then((m) => m.makeRunTaskAddHandler(deps.getCtx))),
|
|
223
|
-
entry(taskUpdateSpec, (deps) => import("../../commands/task/update.command.js").then((m) => m.makeRunTaskUpdateHandler(deps.getCtx))),
|
|
224
|
-
entry(taskCommentSpec, (deps) => import("../../commands/task/comment.command.js").then((m) => m.makeRunTaskCommentHandler(deps.getCtx))),
|
|
225
|
-
entry(taskSetStatusSpec, (deps) => import("../../commands/task/set-status.command.js").then((m) => m.makeRunTaskSetStatusHandler(deps.getCtx))),
|
|
226
|
-
entry(taskDocSpec, () => import("../../commands/task/doc.command.js").then((m) => m.runTaskDoc), {
|
|
227
|
-
needsProject: false,
|
|
228
|
-
needsConfig: false,
|
|
229
|
-
needsTaskContext: false,
|
|
230
|
-
}),
|
|
231
|
-
entry(taskDocShowSpec, (deps) => import("../../commands/task/doc-show.command.js").then((m) => m.makeRunTaskDocShowHandler(deps.getCtx))),
|
|
232
|
-
entry(taskDocSetSpec, (deps) => import("../../commands/task/doc-set.command.js").then((m) => m.makeRunTaskDocSetHandler(deps.getCtx))),
|
|
233
|
-
entry(taskScrubSpec, (deps) => import("../../commands/task/scrub.command.js").then((m) => m.makeRunTaskScrubHandler(deps.getCtx))),
|
|
234
|
-
entry(taskScaffoldSpec, (deps) => import("../../commands/task/scaffold.command.js").then((m) => m.makeRunTaskScaffoldHandler(deps.getCtx))),
|
|
235
|
-
entry(taskNormalizeSpec, (deps) => import("../../commands/task/normalize.command.js").then((m) => m.makeRunTaskNormalizeHandler(deps.getCtx))),
|
|
236
|
-
entry(taskExportSpec, (deps) => import("../../commands/task/export.command.js").then((m) => m.makeRunTaskExportHandler(deps.getCtx))),
|
|
237
|
-
entry(taskLintSpec, () => import("../../commands/task/lint.command.js").then((m) => m.runTaskLint)),
|
|
238
|
-
entry(taskMigrateSpec, (deps) => import("../../commands/task/migrate.command.js").then((m) => m.makeRunTaskMigrateHandler(deps.getCtx))),
|
|
239
|
-
entry(taskMigrateDocSpec, () => import("../../commands/task/migrate-doc.command.js").then((m) => m.runTaskMigrateDoc)),
|
|
240
|
-
entry(taskPlanSetSpec, (deps) => import("../../commands/task/plan-set.command.js").then((m) => m.makeRunTaskPlanSetHandler(deps.getCtx))),
|
|
241
|
-
entry(taskPlanApproveSpec, (deps) => import("../../commands/task/plan-approve.command.js").then((m) => m.makeRunTaskPlanApproveHandler(deps.getCtx))),
|
|
242
|
-
entry(taskPlanRejectSpec, (deps) => import("../../commands/task/plan-reject.command.js").then((m) => m.makeRunTaskPlanRejectHandler(deps.getCtx))),
|
|
243
|
-
entry(taskVerifySpec, () => import("../../commands/task/verify.command.js").then((m) => m.runTaskVerify), {
|
|
244
|
-
needsProject: false,
|
|
245
|
-
needsConfig: false,
|
|
246
|
-
needsTaskContext: false,
|
|
247
|
-
}),
|
|
248
|
-
entry(taskVerifyOkSpec, (deps) => import("../../commands/task/verify-ok.command.js").then((m) => m.makeRunTaskVerifyOkHandler(deps.getCtx))),
|
|
249
|
-
entry(taskVerifyReworkSpec, (deps) => import("../../commands/task/verify-rework.command.js").then((m) => m.makeRunTaskVerifyReworkHandler(deps.getCtx))),
|
|
250
|
-
entry(taskVerifyShowSpec, (deps) => import("../../commands/task/verify-show.command.js").then((m) => m.makeRunTaskVerifyShowHandler(deps.getCtx))),
|
|
251
|
-
entry(taskRebuildIndexSpec, (deps) => import("../../commands/task/rebuild-index.command.js").then((m) => m.makeRunTaskRebuildIndexHandler(deps.getCtx))),
|
|
252
|
-
entry(workStartSpec, (deps) => import("../../commands/branch/work-start.command.js").then((m) => m.makeRunWorkStartHandler(deps.getCtx))),
|
|
253
|
-
entry(recipesSpec, () => import("../../commands/recipes/recipes.command.js").then((m) => m.runRecipes), {
|
|
254
|
-
needsProject: false,
|
|
255
|
-
needsConfig: false,
|
|
256
|
-
needsTaskContext: false,
|
|
257
|
-
}),
|
|
258
|
-
entry(recipesCacheSpec, () => import("../../commands/recipes/cache.command.js").then((m) => m.runRecipesCache), {
|
|
259
|
-
needsProject: false,
|
|
260
|
-
needsConfig: false,
|
|
261
|
-
needsTaskContext: false,
|
|
262
|
-
}),
|
|
263
|
-
entry(recipesListSpec, () => import("../../commands/recipes/list.command.js").then((m) => m.runRecipesList)),
|
|
264
|
-
entry(recipesListRemoteSpec, () => import("../../commands/recipes/list-remote.command.js").then((m) => m.runRecipesListRemote)),
|
|
265
|
-
entry(recipesInfoSpec, () => import("../../commands/recipes/info.command.js").then((m) => m.runRecipesInfo)),
|
|
266
|
-
entry(recipesExplainSpec, () => import("../../commands/recipes/explain.command.js").then((m) => m.runRecipesExplain)),
|
|
267
|
-
entry(recipesRemoveSpec, () => import("../../commands/recipes/remove.command.js").then((m) => m.runRecipesRemove)),
|
|
268
|
-
entry(recipesCachePruneSpec, () => import("../../commands/recipes/cache-prune.command.js").then((m) => m.runRecipesCachePrune)),
|
|
269
|
-
entry(recipesInstallSpec, () => import("../../commands/recipes/install.run.js").then((m) => m.runRecipesInstall)),
|
|
270
|
-
entry(scenarioSpec, () => import("../../commands/scenario/scenario.command.js").then((m) => m.runScenario), {
|
|
271
|
-
needsProject: false,
|
|
272
|
-
needsConfig: false,
|
|
273
|
-
needsTaskContext: false,
|
|
274
|
-
}),
|
|
275
|
-
entry(scenarioListSpec, () => import("../../commands/scenario/list.command.js").then((m) => m.runScenarioList)),
|
|
276
|
-
entry(scenarioInfoSpec, () => import("../../commands/scenario/info.command.js").then((m) => m.runScenarioInfo)),
|
|
277
|
-
entry(scenarioRunSpec, () => import("../../commands/scenario/run.command.js").then((m) => m.runScenarioRun)),
|
|
278
|
-
entry(branchBaseSpec, () => import("../../commands/branch/base.command.js").then((m) => m.runBranchBase), {
|
|
279
|
-
needsProject: false,
|
|
280
|
-
needsConfig: false,
|
|
281
|
-
needsTaskContext: false,
|
|
282
|
-
}),
|
|
283
|
-
entry(branchBaseGetSpec, () => import("../../commands/branch/base.command.js").then((m) => m.runBranchBaseGet)),
|
|
284
|
-
entry(branchBaseSetSpec, () => import("../../commands/branch/base.command.js").then((m) => m.runBranchBaseSet)),
|
|
285
|
-
entry(branchBaseClearSpec, () => import("../../commands/branch/base.command.js").then((m) => m.runBranchBaseClear)),
|
|
286
|
-
entry(branchBaseExplainSpec, () => import("../../commands/branch/base.command.js").then((m) => m.runBranchBaseExplain)),
|
|
287
|
-
entry(branchStatusSpec, () => import("../../commands/branch/status.command.js").then((m) => m.runBranchStatus)),
|
|
288
|
-
entry(branchRemoveSpec, () => import("../../commands/branch/remove.command.js").then((m) => m.runBranchRemove)),
|
|
289
|
-
entry(backendSpec, (deps) => import("../../commands/backend/sync.command.js").then((m) => m.makeRunBackendHandler(deps.getCtx)), {
|
|
290
|
-
needsProject: false,
|
|
291
|
-
needsConfig: false,
|
|
292
|
-
needsTaskContext: false,
|
|
293
|
-
}),
|
|
294
|
-
entry(backendSyncSpec, (deps) => import("../../commands/backend/sync.command.js").then((m) => m.makeRunBackendSyncHandler(deps.getCtx))),
|
|
295
|
-
entry(syncSpec, (deps) => import("../../commands/sync.command.js").then((m) => m.makeRunSyncHandler(deps.getCtx))),
|
|
296
|
-
entry(prSpec, (deps) => import("../../commands/pr/pr.command.js").then((m) => m.makeRunPrHandler(deps.getCtx)), {
|
|
297
|
-
needsProject: false,
|
|
298
|
-
needsConfig: false,
|
|
299
|
-
needsTaskContext: false,
|
|
300
|
-
}),
|
|
301
|
-
entry(prOpenSpec, (deps) => import("../../commands/pr/pr.command.js").then((m) => m.makeRunPrOpenHandler(deps.getCtx))),
|
|
302
|
-
entry(prUpdateSpec, (deps) => import("../../commands/pr/pr.command.js").then((m) => m.makeRunPrUpdateHandler(deps.getCtx))),
|
|
303
|
-
entry(prCheckSpec, (deps) => import("../../commands/pr/pr.command.js").then((m) => m.makeRunPrCheckHandler(deps.getCtx))),
|
|
304
|
-
entry(prNoteSpec, (deps) => import("../../commands/pr/pr.command.js").then((m) => m.makeRunPrNoteHandler(deps.getCtx))),
|
|
305
|
-
entry(integrateSpec, (deps) => import("../../commands/integrate.command.js").then((m) => m.makeRunIntegrateHandler(deps.getCtx))),
|
|
306
|
-
entry(commitSpec, (deps) => import("../../commands/commit.command.js").then((m) => m.makeRunCommitHandler(deps.getCtx))),
|
|
307
|
-
entry(startSpec, (deps) => import("../../commands/start.run.js").then((m) => m.makeRunStartHandler(deps.getCtx))),
|
|
308
|
-
entry(blockSpec, (deps) => import("../../commands/block.run.js").then((m) => m.makeRunBlockHandler(deps.getCtx))),
|
|
309
|
-
entry(verifySpec, (deps) => import("../../commands/verify.run.js").then((m) => m.makeRunVerifyHandler(deps.getCtx))),
|
|
310
|
-
entry(finishSpec, (deps) => import("../../commands/finish.run.js").then((m) => m.makeRunFinishHandler(deps.getCtx))),
|
|
311
|
-
entry(readySpec, (deps) => import("../../commands/ready.command.js").then((m) => m.makeRunReadyHandler(deps.getCtx))),
|
|
312
|
-
entry(docsCliSpec, (deps) => import("../../commands/docs/cli.command.js").then((m) => m.makeRunDocsCliHandler(deps.getHelpJsonForDocs)), {
|
|
313
|
-
needsProject: false,
|
|
314
|
-
needsConfig: false,
|
|
315
|
-
needsTaskContext: false,
|
|
316
|
-
}),
|
|
317
|
-
entry(hooksSpec, () => import("../../commands/hooks/hooks.command.js").then((m) => m.runHooks), {
|
|
318
|
-
needsProject: false,
|
|
319
|
-
needsConfig: false,
|
|
320
|
-
needsTaskContext: false,
|
|
321
|
-
}),
|
|
322
|
-
entry(hooksInstallSpec, () => import("../../commands/hooks/install.command.js").then((m) => m.runHooksInstall)),
|
|
323
|
-
entry(hooksUninstallSpec, () => import("../../commands/hooks/uninstall.command.js").then((m) => m.runHooksUninstall)),
|
|
324
|
-
entry(hooksRunSpec, () => import("../../commands/hooks/run.command.js").then((m) => m.runHooksRun)),
|
|
325
|
-
entry(cleanupSpec, () => import("../../commands/cleanup/merged.command.js").then((m) => m.runCleanup), {
|
|
326
|
-
needsProject: false,
|
|
327
|
-
needsConfig: false,
|
|
328
|
-
needsTaskContext: false,
|
|
329
|
-
}),
|
|
330
|
-
entry(cleanupMergedSpec, (deps) => import("../../commands/cleanup/merged.command.js").then((m) => m.makeRunCleanupMergedHandler(deps.getCtx))),
|
|
331
|
-
entry(guardSpec, () => import("../../commands/guard/guard.command.js").then((m) => m.runGuard), {
|
|
332
|
-
needsProject: false,
|
|
333
|
-
needsConfig: false,
|
|
334
|
-
needsTaskContext: false,
|
|
335
|
-
}),
|
|
336
|
-
entry(guardCleanSpec, () => import("../../commands/guard/clean.command.js").then((m) => m.runGuardClean)),
|
|
337
|
-
entry(guardSuggestAllowSpec, () => import("../../commands/guard/suggest-allow.command.js").then((m) => m.runGuardSuggestAllow)),
|
|
338
|
-
entry(guardCommitSpec, (deps) => import("../../commands/guard/commit.command.js").then((m) => m.makeRunGuardCommitHandler(deps.getCtx))),
|
|
6
|
+
...CORE_COMMANDS,
|
|
7
|
+
...TASK_COMMANDS,
|
|
8
|
+
...PROJECT_COMMANDS,
|
|
9
|
+
...LIFECYCLE_COMMANDS,
|
|
339
10
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ide.d.ts","sourceRoot":"","sources":["../../../../src/cli/run-cli/commands/ide.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ide.d.ts","sourceRoot":"","sources":["../../../../src/cli/run-cli/commands/ide.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAGrD,KAAK,aAAa,GAAG;IAAE,GAAG,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAA;CAAE,CAAC;AAErD,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,aAAa,CAkBlD,CAAC;AAEF,wBAAsB,UAAU,CAAC,IAAI,EAAE;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,IAAI,EAAE,OAAO,CAAC;CACf,GAAG,OAAO,CAAC,MAAM,CAAC,CA0DlB;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,GAAG,cAAc,CAAC,aAAa,CAAC,CAElF"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { mkdir, readFile } from "node:fs/promises";
|
|
1
|
+
import { mkdir, readdir, readFile } from "node:fs/promises";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import { writeTextIfChanged } from "../../../shared/write-if-changed.js";
|
|
4
4
|
import { resolvePolicyGatewayForRepo } from "../../../shared/policy-gateway.js";
|
|
5
|
+
import { renderRole } from "../../command-guide.js";
|
|
5
6
|
import { wrapCommand } from "./wrap-command.js";
|
|
6
7
|
export const ideSyncSpec = {
|
|
7
8
|
id: ["ide", "sync"],
|
|
@@ -31,6 +32,7 @@ export async function cmdIdeSync(opts) {
|
|
|
31
32
|
});
|
|
32
33
|
const agentsPath = gateway.absPath;
|
|
33
34
|
const agentsText = await readFile(agentsPath, "utf8");
|
|
35
|
+
const roleGuides = await loadInstalledRoleGuides(resolved.agentplaneDir);
|
|
34
36
|
const header = [
|
|
35
37
|
"<!--",
|
|
36
38
|
" AUTOGENERATED by agentplane ide sync.",
|
|
@@ -39,7 +41,19 @@ export async function cmdIdeSync(opts) {
|
|
|
39
41
|
"-->",
|
|
40
42
|
"",
|
|
41
43
|
].join("\n");
|
|
42
|
-
const
|
|
44
|
+
const roleGuideText = roleGuides.length === 0
|
|
45
|
+
? ""
|
|
46
|
+
: [
|
|
47
|
+
"",
|
|
48
|
+
"## Synced Role Activation",
|
|
49
|
+
"",
|
|
50
|
+
"- Use `agentplane role ORCHESTRATOR` while planning and approvals are active.",
|
|
51
|
+
"- As soon as a task owner is known, switch to that owner role before owner-scoped execution.",
|
|
52
|
+
"- Do not keep implementation or verification inside ORCHESTRATOR once the task owner is established.",
|
|
53
|
+
"",
|
|
54
|
+
...roleGuides,
|
|
55
|
+
].join("\n");
|
|
56
|
+
const content = `${header}${agentsText.trimEnd()}${roleGuideText}\n`;
|
|
43
57
|
const targets = opts.ide === "cursor"
|
|
44
58
|
? ["cursor"]
|
|
45
59
|
: opts.ide === "windsurf"
|
|
@@ -65,3 +79,51 @@ export async function cmdIdeSync(opts) {
|
|
|
65
79
|
export function makeRunIdeSyncHandler(deps) {
|
|
66
80
|
return (ctx, p) => cmdIdeSync({ cwd: ctx.cwd, rootOverride: ctx.rootOverride, ide: p.ide, deps });
|
|
67
81
|
}
|
|
82
|
+
function toStringList(value) {
|
|
83
|
+
return Array.isArray(value)
|
|
84
|
+
? value
|
|
85
|
+
.filter((item) => typeof item === "string")
|
|
86
|
+
.map((item) => item.trim())
|
|
87
|
+
.filter(Boolean)
|
|
88
|
+
: [];
|
|
89
|
+
}
|
|
90
|
+
function toRoleProfileGuide(opts) {
|
|
91
|
+
return {
|
|
92
|
+
filename: opts.filename,
|
|
93
|
+
id: (typeof opts.profile.id === "string" ? opts.profile.id : "").trim() || opts.roleId,
|
|
94
|
+
role: (typeof opts.profile.role === "string" ? opts.profile.role : "").trim(),
|
|
95
|
+
description: (typeof opts.profile.description === "string"
|
|
96
|
+
? opts.profile.description
|
|
97
|
+
: "").trim(),
|
|
98
|
+
inputs: toStringList(opts.profile.inputs),
|
|
99
|
+
outputs: toStringList(opts.profile.outputs),
|
|
100
|
+
permissions: toStringList(opts.profile.permissions),
|
|
101
|
+
workflow: toStringList(opts.profile.workflow),
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
async function loadInstalledRoleGuides(agentplaneDir) {
|
|
105
|
+
const agentsDir = path.join(agentplaneDir, "agents");
|
|
106
|
+
let entries = [];
|
|
107
|
+
try {
|
|
108
|
+
const dirEntries = await readdir(agentsDir);
|
|
109
|
+
entries = dirEntries.filter((entry) => entry.endsWith(".json")).toSorted();
|
|
110
|
+
}
|
|
111
|
+
catch {
|
|
112
|
+
return [];
|
|
113
|
+
}
|
|
114
|
+
const guides = [];
|
|
115
|
+
for (const entry of entries) {
|
|
116
|
+
const roleId = entry.replace(/\.json$/i, "");
|
|
117
|
+
const raw = JSON.parse(await readFile(path.join(agentsDir, entry), "utf8"));
|
|
118
|
+
const guide = renderRole(roleId, {
|
|
119
|
+
profile: toRoleProfileGuide({
|
|
120
|
+
filename: entry,
|
|
121
|
+
roleId,
|
|
122
|
+
profile: raw,
|
|
123
|
+
}),
|
|
124
|
+
});
|
|
125
|
+
if (guide)
|
|
126
|
+
guides.push(guide);
|
|
127
|
+
}
|
|
128
|
+
return guides;
|
|
129
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../../../src/cli/run-cli/commands/init/ui.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../../../src/cli/run-cli/commands/init/ui.ts"],"names":[],"mappings":"AA4CA,wBAAgB,iBAAiB,IAAI,MAAM,CAc1C;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAO5E"}
|
|
@@ -7,32 +7,52 @@ function color(text, code) {
|
|
|
7
7
|
return text;
|
|
8
8
|
return `\u001B[${code}m${text}\u001B[0m`;
|
|
9
9
|
}
|
|
10
|
+
function muted(text) {
|
|
11
|
+
return color(text, "90");
|
|
12
|
+
}
|
|
13
|
+
function accent(text) {
|
|
14
|
+
return color(text, "36");
|
|
15
|
+
}
|
|
16
|
+
function heading(text) {
|
|
17
|
+
return color(text, "1;33");
|
|
18
|
+
}
|
|
19
|
+
function body(text) {
|
|
20
|
+
return color(text, "37");
|
|
21
|
+
}
|
|
10
22
|
function padLine(line, width) {
|
|
11
23
|
const lineLen = visibleLen(line);
|
|
12
24
|
if (lineLen >= width)
|
|
13
25
|
return line;
|
|
14
26
|
return `${line}${" ".repeat(width - lineLen)}`;
|
|
15
27
|
}
|
|
16
|
-
function
|
|
17
|
-
const width = Math.max(...lines.map((line) => visibleLen(line)), 0);
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
|
|
28
|
+
function framedRailCallout(titleText, lines) {
|
|
29
|
+
const width = Math.max(visibleLen(titleText), ...lines.map((line) => visibleLen(line)), 0);
|
|
30
|
+
const ruleLen = Math.max(1, width - visibleLen(titleText) + 1);
|
|
31
|
+
const header = `${heading("◇")} ${heading(titleText)} ${accent("─".repeat(ruleLen))}${accent("╮")}`;
|
|
32
|
+
const bodyLines = lines.map((line) => `${muted("│")} ${padLine(body(line), width)} ${muted("│")}`);
|
|
33
|
+
const footer = `${muted("├")}${accent("─".repeat(width + 4))}${accent("╯")}`;
|
|
34
|
+
return [muted("│"), header, ...bodyLines, footer].join("\n");
|
|
22
35
|
}
|
|
23
36
|
export function renderInitWelcome() {
|
|
24
37
|
const logo = [
|
|
25
38
|
"░█▀█░█▀▀░█▀▀░█▀█░▀█▀░░░█░█▀█░█░░░█▀█░█▀█░█▀▀",
|
|
26
39
|
"░█▀█░█░█░█▀▀░█░█░░█░░▄▀░░█▀▀░█░░░█▀█░█░█░█▀▀",
|
|
27
40
|
"░▀░▀░▀▀▀░▀▀▀░▀░▀░░▀░░▀░░░▀░░░▀▀▀░▀░▀░▀░▀░▀▀▀",
|
|
28
|
-
].map((line) =>
|
|
29
|
-
const intro = [
|
|
30
|
-
|
|
41
|
+
].map((line) => accent(line));
|
|
42
|
+
const intro = framedRailCallout("Interactive Setup", [
|
|
43
|
+
"",
|
|
44
|
+
"Bootstrap an agent-first workflow in this repository.",
|
|
31
45
|
"This interactive setup runs once; daily work is executed by agents.",
|
|
32
|
-
|
|
33
|
-
|
|
46
|
+
"Follow the prompts below to choose policy, workflow, and safety defaults.",
|
|
47
|
+
"",
|
|
48
|
+
]);
|
|
49
|
+
return `${logo.join("\n")}\n\n${intro}\n\n`;
|
|
34
50
|
}
|
|
35
51
|
export function renderInitSection(title, description) {
|
|
36
|
-
const
|
|
37
|
-
|
|
52
|
+
const lines = description.split("\n");
|
|
53
|
+
const width = Math.max(visibleLen(title), ...lines.map((line) => visibleLen(line)), 0);
|
|
54
|
+
const ruleLen = Math.max(1, width - visibleLen(title) + 1);
|
|
55
|
+
const header = `${heading("◇")} ${heading(title)} ${accent("─".repeat(ruleLen))}`;
|
|
56
|
+
const bodyLines = lines.map((line) => `${muted("│")} ${body(line)}`);
|
|
57
|
+
return `${header}\n${bodyLines.join("\n")}\n${muted("│")}\n\n`;
|
|
38
58
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-cli.core.pr-flow.test-helpers.d.ts","sourceRoot":"","sources":["../../src/cli/run-cli.core.pr-flow.test-helpers.ts"],"names":[],"mappings":"AAEA,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBjF;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAatF"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { runCliSilent } from "./run-cli.test-helpers.js";
|
|
2
|
+
export async function approveTaskPlan(root, taskId) {
|
|
3
|
+
await runCliSilent([
|
|
4
|
+
"task",
|
|
5
|
+
"plan",
|
|
6
|
+
"set",
|
|
7
|
+
taskId,
|
|
8
|
+
"--text",
|
|
9
|
+
"1) Do the work\n2) Verify the work",
|
|
10
|
+
"--updated-by",
|
|
11
|
+
"ORCHESTRATOR",
|
|
12
|
+
"--root",
|
|
13
|
+
root,
|
|
14
|
+
]);
|
|
15
|
+
await runCliSilent([
|
|
16
|
+
"task",
|
|
17
|
+
"plan",
|
|
18
|
+
"approve",
|
|
19
|
+
taskId,
|
|
20
|
+
"--by",
|
|
21
|
+
"USER",
|
|
22
|
+
"--note",
|
|
23
|
+
"OK",
|
|
24
|
+
"--root",
|
|
25
|
+
root,
|
|
26
|
+
]);
|
|
27
|
+
}
|
|
28
|
+
export async function recordVerificationOk(root, taskId) {
|
|
29
|
+
await runCliSilent([
|
|
30
|
+
"verify",
|
|
31
|
+
taskId,
|
|
32
|
+
"--ok",
|
|
33
|
+
"--by",
|
|
34
|
+
"REVIEWER",
|
|
35
|
+
"--note",
|
|
36
|
+
"Ok to integrate",
|
|
37
|
+
"--quiet",
|
|
38
|
+
"--root",
|
|
39
|
+
root,
|
|
40
|
+
]);
|
|
41
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-cli.core.tasks.test-helpers.d.ts","sourceRoot":"","sources":["../../src/cli/run-cli.core.tasks.test-helpers.ts"],"names":[],"mappings":"AAEA,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAI7D"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { defaultConfig } from "@agentplaneorg/core";
|
|
2
|
+
import type { TaskBackend } from "../backends/task-backend.js";
|
|
2
3
|
export declare function registerAgentplaneHome(): void;
|
|
4
|
+
export declare function installRunCliIntegrationHarness(): void;
|
|
3
5
|
export declare function getAgentplaneHome(): string | null;
|
|
4
6
|
export declare function captureStdIO(): {
|
|
5
7
|
readonly stdout: string;
|
|
@@ -7,6 +9,7 @@ export declare function captureStdIO(): {
|
|
|
7
9
|
restore(): void;
|
|
8
10
|
};
|
|
9
11
|
export declare function silenceStdIO(): () => void;
|
|
12
|
+
export declare function stubTaskBackend(overrides?: Partial<TaskBackend>): TaskBackend;
|
|
10
13
|
export declare function runCliSilent(args: string[]): Promise<number>;
|
|
11
14
|
export declare function mkGitRepoRoot(): Promise<string>;
|
|
12
15
|
export declare function mkTempDir(): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-cli.test-helpers.d.ts","sourceRoot":"","sources":["../../src/cli/run-cli.test-helpers.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"run-cli.test-helpers.d.ts","sourceRoot":"","sources":["../../src/cli/run-cli.test-helpers.ts"],"names":[],"mappings":"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"}
|