@rse/ase 1.0.6 → 2.0.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/dst/ase-agent-definition-api.d.ts +184 -0
- package/dst/ase-agent-definition-api.js +6 -0
- package/dst/ase-agent-definition-builtin/condenser.js +42 -0
- package/dst/ase-agent-definition-builtin/editor.js +45 -0
- package/dst/ase-agent-definition-builtin/estimator.js +98 -0
- package/dst/ase-agent-definition-builtin/implementer.js +121 -0
- package/dst/ase-agent-definition-builtin/integrator.js +56 -0
- package/dst/ase-agent-definition-builtin/qualifier.js +61 -0
- package/dst/ase-agent-definition-builtin/rebooter.js +41 -0
- package/dst/ase-agent-definition-builtin/researcher.js +77 -0
- package/dst/ase-agent-definition-core.js +827 -0
- package/dst/ase-agent-fleet.js +772 -0
- package/dst/ase-agent-process.js +232 -0
- package/dst/ase-agent-relay-client.js +509 -0
- package/dst/ase-agent-relay-core.js +213 -0
- package/dst/ase-agent-relay-server-bind.js +242 -0
- package/dst/ase-agent-relay-server-cli.js +50 -0
- package/dst/ase-agent-runtime-claim.js +189 -0
- package/dst/ase-agent-runtime-engine.js +1100 -0
- package/dst/ase-agent-runtime-exec.js +275 -0
- package/dst/ase-agent-runtime-phase.js +581 -0
- package/dst/ase-agent-runtime-request.js +272 -0
- package/dst/ase-agent-runtime-tool.js +207 -0
- package/dst/ase-agent-runtime.js +1316 -0
- package/dst/ase-agent.js +65 -0
- package/dst/ase-artifact.js +6 -5
- package/dst/ase-config-core.js +465 -0
- package/dst/ase-config-schema.js +351 -0
- package/dst/ase-config-scope.js +172 -0
- package/dst/ase-config.js +25 -585
- package/dst/ase-hook.js +230 -116
- package/dst/ase-lib-daemon-cli.js +130 -0
- package/dst/ase-lib-hash.js +20 -0
- package/dst/{ase-log.js → ase-lib-log.js} +40 -7
- package/dst/ase-lib-server-bind.js +115 -0
- package/dst/ase-lib-server-cli.js +474 -0
- package/dst/{ase-table.js → ase-lib-table.js} +1 -1
- package/dst/{ase-version.js → ase-lib-version.js} +3 -0
- package/dst/ase-man.js +96 -0
- package/dst/ase-mcp.js +166 -13
- package/dst/{ase-getopt.js → ase-service-getopt.js} +82 -80
- package/dst/{ase-markdown.js → ase-service-markdown.js} +18 -11
- package/dst/ase-service-otel.js +1246 -0
- package/dst/{ase-skills.js → ase-service-skills.js} +29 -64
- package/dst/ase-service-state.js +101 -0
- package/dst/ase-service.js +251 -76
- package/dst/ase-setup-common.js +141 -0
- package/dst/ase-setup-mcp.js +359 -0
- package/dst/ase-setup-settings.js +837 -0
- package/dst/ase-setup.js +113 -869
- package/dst/ase-spec.js +31 -19
- package/dst/ase-statusline.js +108 -43
- package/dst/ase-task-board-core.js +739 -0
- package/dst/ase-task-board-filter.js +127 -0
- package/dst/ase-task-board-flow.js +237 -0
- package/dst/ase-task-board-graph.js +497 -0
- package/dst/ase-task-board-stats.js +263 -0
- package/dst/ase-task-board-tui-control.js +775 -0
- package/dst/ase-task-board-tui-model.js +1008 -0
- package/dst/ase-task-board-tui-popup.js +626 -0
- package/dst/ase-task-board-tui-style.js +106 -0
- package/dst/ase-task-board-tui-view.js +847 -0
- package/dst/ase-task-board-tui.js +189 -0
- package/dst/ase-task-board-web-client.css +1 -0
- package/dst/ase-task-board-web-client.html +20 -0
- package/dst/ase-task-board-web-client.js +81 -0
- package/dst/ase-task-board-web-server.js +823 -0
- package/dst/ase-task-board.js +134 -0
- package/dst/ase-task-format.js +757 -0
- package/dst/ase-task-request.js +208 -0
- package/dst/ase-task-store-client.js +495 -0
- package/dst/ase-task-store-core.js +804 -0
- package/dst/ase-task-store-issues.js +237 -0
- package/dst/ase-task-store-plugin-api.js +6 -0
- package/dst/ase-task-store-plugin-ase.js +484 -0
- package/dst/ase-task-store-plugin-delegate.js +137 -0
- package/dst/ase-task-store-plugin-gitea.js +666 -0
- package/dst/ase-task-store-plugin-github.js +696 -0
- package/dst/ase-task-store-plugin-gitlab.js +668 -0
- package/dst/ase-task-store-server-bind.js +538 -0
- package/dst/ase-task-store-server-cli.js +154 -0
- package/dst/ase-task.js +1335 -357
- package/dst/{ase-compat.js → ase-util-compat.js} +2 -2
- package/dst/{ase-diagram.js → ase-util-diagram.js} +107 -32
- package/dst/{ase-meta.js → ase-util-meta.js} +2 -2
- package/dst/{ase-metric.js → ase-util-metric.js} +2 -2
- package/dst/{ase-mint.js → ase-util-mint.js} +19 -12
- package/dst/{ase-worktree.js → ase-util-worktree.js} +30 -19
- package/dst/ase-util.js +20 -0
- package/dst/ase.js +108 -32
- package/dst/man/ase-agent-adhoc.1 +515 -0
- package/dst/man/ase-agent-condenser.1 +193 -0
- package/dst/man/ase-agent-editor.1 +212 -0
- package/dst/man/ase-agent-estimator.1 +214 -0
- package/dst/man/ase-agent-fleet.1 +185 -0
- package/dst/man/ase-agent-implementer.1 +233 -0
- package/dst/man/ase-agent-integrator.1 +213 -0
- package/dst/man/ase-agent-qualifier.1 +214 -0
- package/dst/man/ase-agent-rebooter.1 +193 -0
- package/dst/man/ase-agent-relay.1 +128 -0
- package/dst/man/ase-agent-researcher.1 +217 -0
- package/dst/man/ase-agent.1 +264 -0
- package/dst/man/ase-artifact-list.1 +38 -0
- package/dst/man/ase-artifact-name.1 +39 -0
- package/dst/man/ase-artifact.1 +56 -0
- package/dst/man/ase-config-delete.1 +45 -0
- package/dst/man/ase-config-edit.1 +48 -0
- package/dst/man/ase-config-get.1 +46 -0
- package/dst/man/ase-config-init.1 +60 -0
- package/dst/man/ase-config-list.1 +42 -0
- package/dst/man/ase-config-set.1 +52 -0
- package/dst/man/ase-config.1 +225 -0
- package/dst/man/ase-hook-permission-request.1 +36 -0
- package/dst/man/ase-hook-pre-tool-use.1 +59 -0
- package/dst/man/ase-hook-session-end.1 +47 -0
- package/dst/man/ase-hook-session-persona.1 +37 -0
- package/dst/man/ase-hook-session-start.1 +81 -0
- package/dst/man/ase-hook-stop.1 +34 -0
- package/dst/man/ase-hook-user-prompt-submit.1 +34 -0
- package/dst/man/ase-hook.1 +51 -0
- package/dst/man/ase-man.1 +67 -0
- package/dst/man/ase-mcp.1 +61 -0
- package/dst/man/ase-service-log.1 +43 -0
- package/dst/man/ase-service-send.1 +47 -0
- package/dst/man/ase-service-start.1 +54 -0
- package/dst/man/ase-service-status.1 +46 -0
- package/dst/man/ase-service-stop.1 +37 -0
- package/dst/man/ase-service.1 +85 -0
- package/dst/man/ase-setup-disable.1 +44 -0
- package/dst/man/ase-setup-enable.1 +45 -0
- package/dst/man/ase-setup-install.1 +73 -0
- package/dst/man/ase-setup-mcp.1 +124 -0
- package/dst/man/ase-setup-status.1 +60 -0
- package/dst/man/ase-setup-statusline.1 +92 -0
- package/dst/man/ase-setup-telemetry.1 +92 -0
- package/dst/man/ase-setup-uninstall.1 +59 -0
- package/dst/man/ase-setup-update.1 +64 -0
- package/dst/man/ase-setup.1 +93 -0
- package/dst/man/ase-spec-export.1 +62 -0
- package/dst/man/ase-spec-lint.1 +40 -0
- package/dst/man/ase-spec-preview.1 +40 -0
- package/dst/man/ase-spec.1 +46 -0
- package/dst/man/ase-statusline.1 +189 -0
- package/dst/man/ase-task-assign.1 +71 -0
- package/dst/man/ase-task-board.1 +384 -0
- package/dst/man/ase-task-delete.1 +35 -0
- package/dst/man/ase-task-edit.1 +46 -0
- package/dst/man/ase-task-idscheme.1 +65 -0
- package/dst/man/ase-task-lifecycle.1 +57 -0
- package/dst/man/ase-task-list.1 +47 -0
- package/dst/man/ase-task-load.1 +36 -0
- package/dst/man/ase-task-newid.1 +61 -0
- package/dst/man/ase-task-purge.1 +37 -0
- package/dst/man/ase-task-rename.1 +44 -0
- package/dst/man/ase-task-request.1 +61 -0
- package/dst/man/ase-task-save.1 +48 -0
- package/dst/man/ase-task-status.1 +55 -0
- package/dst/man/ase-task-store.1 +194 -0
- package/dst/man/ase-task-view.1 +40 -0
- package/dst/man/ase-task.1 +160 -0
- package/dst/man/ase-util-compat.1 +25 -0
- package/dst/man/ase-util-diagram.1 +76 -0
- package/dst/man/ase-util-meta.1 +45 -0
- package/dst/man/ase-util-metric.1 +54 -0
- package/dst/man/ase-util-mint.1 +59 -0
- package/dst/man/ase-util-worktree.1 +72 -0
- package/dst/man/ase-util.1 +50 -0
- package/dst/man/ase.1 +124 -0
- package/package.json +79 -21
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/.codex-plugin/plugin.json +1 -1
- package/plugin/.github/plugin/plugin.json +1 -1
- package/plugin/agents/ase-meta-diagram.md +12 -8
- package/plugin/agents/ase-repo-review.md +322 -0
- package/plugin/hooks/hooks-codex.json +5 -0
- package/plugin/hooks/hooks-copilot.json +5 -0
- package/plugin/hooks/hooks.json +8 -0
- package/plugin/meta/ase-common-approach.md +117 -0
- package/plugin/meta/ase-common-changeset.md +256 -0
- package/plugin/meta/ase-common-code.md +10 -173
- package/plugin/meta/ase-common-grill.md +317 -0
- package/plugin/meta/ase-common-resolve.md +305 -0
- package/plugin/meta/ase-common-task.md +83 -4
- package/plugin/meta/ase-constitution.md +0 -2
- package/plugin/meta/ase-format-specbook.md +208 -25
- package/plugin/meta/ase-format-specbook.yaml +242 -851
- package/plugin/meta/ase-format-task.md +669 -125
- package/plugin/meta/ase-persona.md +3 -4
- package/plugin/meta/ase-skill.md +9 -0
- package/plugin/mods/ase-mods.ts +409 -0
- package/plugin/mods/claude-code.d.ts +13417 -0
- package/plugin/skills/ase-arch-analyze/SKILL.md +1 -1
- package/plugin/skills/ase-arch-analyze/help.md +2 -2
- package/plugin/skills/ase-code-analyze/SKILL.md +59 -8
- package/plugin/skills/ase-code-analyze/help.md +29 -4
- package/plugin/skills/ase-code-edit/SKILL.md +107 -181
- package/plugin/skills/ase-code-edit/help.md +118 -31
- package/plugin/skills/ase-code-lint/SKILL.md +64 -13
- package/plugin/skills/ase-code-lint/help.md +32 -2
- package/plugin/skills/ase-docs-proofread/SKILL.md +4 -4
- package/plugin/skills/ase-docs-proofread/help.md +1 -1
- package/plugin/skills/ase-docs-refine/SKILL.md +4 -4
- package/plugin/skills/ase-docs-shorten/SKILL.md +4 -4
- package/plugin/skills/ase-help-intent/data.md +2164 -1087
- package/plugin/skills/ase-help-intent/help.md +1 -1
- package/plugin/skills/ase-help-skill/catalog.md +12 -9
- package/plugin/skills/ase-meta-brainstorm/SKILL.md +1 -1
- package/plugin/skills/ase-meta-config/SKILL.md +3 -4
- package/plugin/skills/ase-meta-config/help.md +31 -10
- package/plugin/skills/ase-meta-mint/SKILL.md +5 -5
- package/plugin/skills/ase-meta-mint/help.md +10 -5
- package/plugin/skills/ase-meta-why/help.md +1 -1
- package/plugin/skills/ase-meta-workflow/SKILL.md +7 -7
- package/plugin/skills/ase-meta-workflow/help.md +4 -4
- package/plugin/skills/ase-meta-workflow/sample.md +3 -3
- package/plugin/skills/ase-meta-workflow/workflow.txt +22 -18
- package/plugin/skills/{ase-meta-changelog → ase-repo-changelog}/SKILL.md +4 -3
- package/plugin/skills/{ase-meta-changelog → ase-repo-changelog}/help.md +5 -5
- package/plugin/skills/{ase-meta-commit → ase-repo-commit}/SKILL.md +6 -6
- package/plugin/skills/{ase-meta-commit → ase-repo-commit}/help.md +5 -5
- package/plugin/skills/{ase-meta-diff → ase-repo-diff}/SKILL.md +6 -6
- package/plugin/skills/{ase-meta-diff → ase-repo-diff}/help.md +8 -8
- package/plugin/skills/{ase-code-dissect → ase-repo-dissect}/SKILL.md +19 -19
- package/plugin/skills/{ase-code-dissect → ase-repo-dissect}/help.md +10 -12
- package/plugin/skills/ase-repo-merge/SKILL.md +346 -0
- package/plugin/skills/ase-repo-merge/help.md +107 -0
- package/plugin/skills/ase-repo-resolve/SKILL.md +158 -0
- package/plugin/skills/ase-repo-resolve/help.md +102 -0
- package/plugin/skills/ase-repo-review/SKILL.md +406 -0
- package/plugin/skills/ase-repo-review/help.md +181 -0
- package/plugin/skills/ase-spec-edit/SKILL.md +117 -183
- package/plugin/skills/ase-spec-edit/help.md +107 -26
- package/plugin/skills/ase-sync-reconcile/help.md +1 -1
- package/plugin/skills/ase-task-assign/SKILL.md +111 -0
- package/plugin/skills/ase-task-assign/help.md +119 -0
- package/plugin/skills/ase-task-condense/SKILL.md +21 -21
- package/plugin/skills/ase-task-condense/help.md +12 -10
- package/plugin/skills/ase-task-delete/SKILL.md +1 -1
- package/plugin/skills/ase-task-dissect/SKILL.md +71 -48
- package/plugin/skills/ase-task-dissect/help.md +10 -9
- package/plugin/skills/ase-task-edit/SKILL.md +379 -94
- package/plugin/skills/ase-task-edit/help.md +95 -22
- package/plugin/skills/ase-task-estimate/SKILL.md +492 -0
- package/plugin/skills/ase-task-estimate/help.md +158 -0
- package/plugin/skills/ase-task-grill/SKILL.md +246 -138
- package/plugin/skills/ase-task-grill/help.md +129 -26
- package/plugin/skills/ase-task-id/SKILL.md +8 -1
- package/plugin/skills/ase-task-id/help.md +6 -3
- package/plugin/skills/ase-task-implement/SKILL.md +535 -145
- package/plugin/skills/ase-task-implement/help.md +138 -47
- package/plugin/skills/ase-task-integrate/SKILL.md +549 -0
- package/plugin/skills/ase-task-integrate/help.md +187 -0
- package/plugin/skills/ase-task-list/SKILL.md +55 -23
- package/plugin/skills/ase-task-list/help.md +45 -21
- package/plugin/skills/ase-task-reboot/SKILL.md +84 -43
- package/plugin/skills/ase-task-reboot/help.md +28 -8
- package/plugin/skills/ase-task-rename/SKILL.md +10 -2
- package/plugin/skills/ase-task-research/SKILL.md +386 -0
- package/plugin/skills/ase-task-research/help.md +102 -0
- package/plugin/skills/ase-task-status/SKILL.md +137 -0
- package/plugin/skills/ase-task-status/help.md +80 -0
- package/plugin/skills/ase-task-view/SKILL.md +49 -24
- package/plugin/skills/ase-task-view/help.md +19 -9
- package/plugin/agents/ase-meta-review.md +0 -187
- package/plugin/skills/ase-code-craft/SKILL.md +0 -264
- package/plugin/skills/ase-code-craft/help.md +0 -122
- package/plugin/skills/ase-code-refactor/SKILL.md +0 -232
- package/plugin/skills/ase-code-refactor/help.md +0 -109
- package/plugin/skills/ase-code-resolve/SKILL.md +0 -289
- package/plugin/skills/ase-code-resolve/help.md +0 -116
- package/plugin/skills/ase-meta-review/SKILL.md +0 -210
- package/plugin/skills/ase-meta-review/help.md +0 -96
- package/plugin/skills/ase-task-preflight/SKILL.md +0 -166
- package/plugin/skills/ase-task-preflight/help.md +0 -82
- /package/dst/{ase-ignore.js → ase-lib-ignore.js} +0 -0
- /package/dst/{ase-stdio.js → ase-lib-stdio.js} +0 -0
- /package/dst/{ase-kv.js → ase-service-kv.js} +0 -0
- /package/dst/{ase-sleep.js → ase-service-sleep.js} +0 -0
- /package/dst/{ase-timestamp.js → ase-service-timestamp.js} +0 -0
|
@@ -8,50 +8,103 @@
|
|
|
8
8
|
`ase-task-implement`
|
|
9
9
|
[`--help`|`-h`]
|
|
10
10
|
[`--next`|`-n` *option*[,...]]
|
|
11
|
-
[`--worktree`|`-w`]
|
|
11
|
+
[`--worktree`|`-w` *name*]
|
|
12
|
+
[`--source`|`-s` *source*]
|
|
13
|
+
[`--changeset`|`-c` *changeset*]
|
|
14
|
+
[`--draft`|`-d`]
|
|
15
|
+
[`--stateless`|`-S`]
|
|
12
16
|
[*id*]
|
|
13
17
|
|
|
14
18
|
## DESCRIPTION
|
|
15
19
|
|
|
16
20
|
The `ase-task-implement` skill performs the *final implementation* of
|
|
17
|
-
a task plan by
|
|
18
|
-
*
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
`
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
21
|
+
a task plan by creating a complete *change set* from the plan's
|
|
22
|
+
*source* (the code basis) into the plan's *changeset* (the location of
|
|
23
|
+
the change set). Delivering the change set from there into the plan's
|
|
24
|
+
*target* is the separate concern of `ase-task-integrate`. Afterwards
|
|
25
|
+
the checkboxes of the realized `DOM`/`IFC`/`ARC`/`IMP` bullet-points
|
|
26
|
+
and of the performed and succeeded `REG`/`CON` bullet-points are ticked
|
|
27
|
+
to `[x]` (or `[/]` if only partially realized or succeeded), refreshing
|
|
28
|
+
the plan's `Modified:` key. Bullet-points in state `[-]` (cancelled) or
|
|
29
|
+
`[>]` (deferred) are *skipped*: they are neither realized nor checked,
|
|
30
|
+
do not count against completeness, and keep their checkbox untouched.
|
|
31
|
+
|
|
32
|
+
The *source* is selected by the plan's `Source:` frontmatter key
|
|
33
|
+
(if absent, the configured default `project.task.default.source`),
|
|
34
|
+
overridable via `--source`:
|
|
35
|
+
|
|
36
|
+
- `worktree` (default): the *origin* working copy (the one the skill
|
|
37
|
+
was started in) with its checked-out branch.
|
|
38
|
+
- `branch:`*name*: the existing branch *name*. For a `worktree`
|
|
39
|
+
changeset without `--worktree`, the origin working copy is
|
|
40
|
+
*switched* to it in place first, but only if it has *no*
|
|
41
|
+
uncommitted changes, otherwise the skill stops and touches nothing.
|
|
42
|
+
|
|
43
|
+
A context worktree created by `--worktree` carries its *own* branch
|
|
44
|
+
*name*, which starts at the source (so the source branch itself is never
|
|
45
|
+
checked out there and stays available as the integration target), while
|
|
46
|
+
a reused one keeps its own base, so earlier work in it is continued.
|
|
47
|
+
|
|
48
|
+
The *changeset* is selected by the plan's `Changeset:` frontmatter
|
|
49
|
+
key (if absent, the configured default `project.task.default.changeset`),
|
|
50
|
+
overridable via `--changeset`:
|
|
51
|
+
|
|
52
|
+
- `worktree` (default): the change set stays *uncommitted* in the
|
|
53
|
+
context worktree.
|
|
54
|
+
- `branch:`*name*: the change set is *committed* onto the branch
|
|
55
|
+
*name* -- created from the source if missing -- inside the worktree
|
|
56
|
+
in which this branch is checked out, or inside a newly created
|
|
57
|
+
worktree `.ase/worktree/<name>`.
|
|
58
|
+
- `attachment:`*name*: the change set is made and verified in a
|
|
59
|
+
*temporary* worktree, detached at the source commit, and stored as
|
|
60
|
+
the attachment block of type `text/x-diff; charset=utf-8;
|
|
61
|
+
kind="<name>"` (with its base commit in the `Desc:` key) of the
|
|
62
|
+
plan only, leaving all artifacts untouched. An already existing
|
|
63
|
+
attachment of this kind is re-applied first, so re-runs build the
|
|
64
|
+
change set *cumulatively*. A *stale* one -- older than the plan --
|
|
65
|
+
stops the skill with an error, and an already *delivered* one --
|
|
66
|
+
marked `merged` in its `Desc:` key by `ase-task-integrate
|
|
67
|
+
--no-cleanup` -- is not re-applied, but replaced by a fresh change
|
|
68
|
+
set. The `--draft` shorthand selects
|
|
69
|
+
`attachment:draft`, the *implementation draft* of the plan, which
|
|
70
|
+
can be reviewed via `ase-task-view --full` and delivered via
|
|
71
|
+
`ase-task-integrate --draft`. An undelivered draft is *ignored* by
|
|
72
|
+
any other changeset (with a warning), as only `attachment:draft`
|
|
73
|
+
builds upon it.
|
|
74
|
+
|
|
75
|
+
For derived changesets (`branch:` and `attachment:`), *uncommitted*
|
|
76
|
+
changes of a `worktree` source are *not* carried over, as they start
|
|
77
|
+
at its `HEAD`.
|
|
78
|
+
|
|
79
|
+
The skill does *not* maintain the *change set snapshot* of the plan
|
|
80
|
+
(the attachment block of type `text/x-diff; charset=utf-8;
|
|
81
|
+
kind="changeset"`), which only the `implementer` agent of `ase agent`
|
|
82
|
+
attaches after its implementation, but passes an existing one through
|
|
83
|
+
unchanged.
|
|
84
|
+
|
|
85
|
+
Unless `--stateless` is given, the plan's `Status:` key follows the
|
|
86
|
+
task lifecycle model: for `solo` it stays untouched (as the task is
|
|
87
|
+
closed by `ase-task-integrate`), and for `team` and `enterprise` it
|
|
88
|
+
becomes `IMPLEMENTING` before and `IMPLEMENTED` (if the change set was
|
|
89
|
+
applied completely and successfully) or `STALLED` (otherwise) after
|
|
90
|
+
the implementation.
|
|
27
91
|
|
|
28
92
|
The *kind of change* stated by the plan's `Kind:` frontmatter key
|
|
29
|
-
(`CRAFTING`, `REFACTORING`, or `RESOLVING`) selects which
|
|
93
|
+
(`SPECIFYING`, `CRAFTING`, `REFACTORING`, or `RESOLVING`) selects which
|
|
30
94
|
*operation-specific tenet set* of the **ASE Tenets** is internalized
|
|
31
95
|
before any artifact is touched, in addition to the always applying
|
|
32
96
|
**GENERIC TENETS**. If a plan carries no such key, the kind is
|
|
33
97
|
*inferred* from the plan content, defaulting to `CRAFTING`.
|
|
34
98
|
|
|
35
|
-
If the task plan deliberately *omits* the `## VERIFICATION` section
|
|
36
|
-
(as produced by `ase-
|
|
37
|
-
`ase-code-resolve`, or `ase-task-edit` when invoked with `--dry`),
|
|
99
|
+
If the task plan deliberately *omits* the `## VERIFICATION (WHEN)` section
|
|
100
|
+
(as produced by `ase-task-edit` when invoked with `--unverified`),
|
|
38
101
|
the entire verification phase is strictly skipped: no build, tests,
|
|
39
102
|
linter, type-checker, or program execution is performed once the
|
|
40
103
|
source files have been modified.
|
|
41
104
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
touched, and the entire implementation -- including all verification
|
|
46
|
-
runs -- then happens *inside* that worktree, which is left
|
|
47
|
-
*uncommitted*. The worktree is *not* named by an option value: it
|
|
48
|
-
always carries the unique *task id*, so worktree and branch stay tied
|
|
49
|
-
to the very task plan implemented in them. As the worktree branches off
|
|
50
|
-
`HEAD`, *uncommitted* changes of the current working copy are *not*
|
|
51
|
-
carried over into it.
|
|
52
|
-
|
|
53
|
-
After implementation, the user is asked whether to preserve or
|
|
54
|
-
delete the task plan, unless `--next` pre-selects this choice.
|
|
105
|
+
After implementation, the user is asked whether to stop, hand off to
|
|
106
|
+
`ase-task-edit`, hand off to `ase-task-integrate`, or delete the task
|
|
107
|
+
plan, unless `--next` pre-selects this choice.
|
|
55
108
|
|
|
56
109
|
## OPTIONS
|
|
57
110
|
|
|
@@ -59,19 +112,41 @@ delete the task plan, unless `--next` pre-selects this choice.
|
|
|
59
112
|
Automatically answer the user dialog for the next step. *option*
|
|
60
113
|
is a single token or a *comma-separated chronological list* of
|
|
61
114
|
tokens; the *first* token is consumed by this skill, and any
|
|
62
|
-
remaining tokens are
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
`
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
exists,
|
|
74
|
-
|
|
115
|
+
remaining tokens are *forwarded* (via `--next`) to the downstream
|
|
116
|
+
skill. Recognized tokens at this skill: `none` (default,
|
|
117
|
+
interactive answer required), `DONE` (preserve task plan and stop),
|
|
118
|
+
`EDIT` (hand off to `ase-task-edit`), `INTEGRATE` (hand off to
|
|
119
|
+
`ase-task-integrate`, forwarding `--worktree`, `--changeset`, and
|
|
120
|
+
`--stateless`), or `DELETE` (hand off to `ase-task-delete`).
|
|
121
|
+
|
|
122
|
+
- `--worktree`|`-w` *name*:
|
|
123
|
+
Operate in the *context worktree* `.ase/worktree/<name>` instead
|
|
124
|
+
of the current working copy: it is *reused* if it already exists,
|
|
125
|
+
otherwise it is *created* with its own branch *name* (checked out if
|
|
126
|
+
it exists, created at the source commit otherwise, so the source
|
|
127
|
+
branch itself is never checked out there). The `worktree` value of the
|
|
128
|
+
changeset refers to it, while the `worktree` value of the source
|
|
129
|
+
(and of the target of a subsequent integration) keeps referring to
|
|
130
|
+
the origin working copy, so an integration delivers the change set
|
|
131
|
+
from the context worktree back into the origin branch. The option
|
|
132
|
+
is permitted for a `worktree` changeset only, as a `branch:` or
|
|
133
|
+
`attachment:` changeset would leave the context worktree unused.
|
|
134
|
+
|
|
135
|
+
- `--source`|`-s` *source*:
|
|
136
|
+
Override the plan's `Source:` key (`worktree` or `branch:`*name*)
|
|
137
|
+
for this run, without changing the plan.
|
|
138
|
+
|
|
139
|
+
- `--changeset`|`-c` *changeset*:
|
|
140
|
+
Override the plan's `Changeset:` key (`worktree`, `branch:`*name*,
|
|
141
|
+
or `attachment:`*name*) for this run, without changing the plan.
|
|
142
|
+
|
|
143
|
+
- `--draft`|`-d`:
|
|
144
|
+
Shorthand for `--changeset attachment:draft`: create the
|
|
145
|
+
*implementation draft* of the plan only, leaving all artifacts
|
|
146
|
+
untouched (a dry-run). Mutually exclusive with `--changeset`.
|
|
147
|
+
|
|
148
|
+
- `--stateless`|`-S`:
|
|
149
|
+
Leave the plan's `Status:` key untouched.
|
|
75
150
|
|
|
76
151
|
## ARGUMENTS
|
|
77
152
|
|
|
@@ -83,12 +158,14 @@ delete the task plan, unless `--next` pre-selects this choice.
|
|
|
83
158
|
|
|
84
159
|
- You want a task plan turned into actual changes
|
|
85
160
|
- You want the planned change set applied and verified
|
|
86
|
-
- You want
|
|
161
|
+
- You want the change set committed onto a dedicated branch
|
|
162
|
+
- You want the change set attached to the plan for review only
|
|
163
|
+
- You want a dry-run of the implementation as a reviewable draft
|
|
87
164
|
- You want the implementation isolated in a Git worktree
|
|
88
165
|
|
|
89
166
|
## EXAMPLES
|
|
90
167
|
|
|
91
|
-
Implement the current task plan:
|
|
168
|
+
Implement the current task plan in the current working copy:
|
|
92
169
|
|
|
93
170
|
```text
|
|
94
171
|
❯ /ase-task-implement
|
|
@@ -100,15 +177,29 @@ Implement a specific task and delete the plan when done:
|
|
|
100
177
|
❯ /ase-task-implement --next DELETE hello
|
|
101
178
|
```
|
|
102
179
|
|
|
103
|
-
|
|
104
|
-
|
|
180
|
+
Draft the implementation of the task `hello` and apply the draft when
|
|
181
|
+
done:
|
|
182
|
+
|
|
183
|
+
```text
|
|
184
|
+
❯ /ase-task-implement --draft --next INTEGRATE hello
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
Implement the task `hello` inside the isolated Git worktree
|
|
188
|
+
`.ase/worktree/hello` and integrate it afterwards:
|
|
189
|
+
|
|
190
|
+
```text
|
|
191
|
+
❯ /ase-task-implement --worktree hello --next INTEGRATE,DONE hello
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
Implement the task `hello` by committing its change set onto the
|
|
195
|
+
branch `feature-hello`:
|
|
105
196
|
|
|
106
197
|
```text
|
|
107
|
-
❯ /ase-task-implement --
|
|
198
|
+
❯ /ase-task-implement --changeset branch:feature-hello hello
|
|
108
199
|
```
|
|
109
200
|
|
|
110
201
|
## SEE ALSO
|
|
111
202
|
|
|
112
|
-
[`ase-task-edit`](../ase-task-edit/help.md), [`ase-task-
|
|
203
|
+
[`ase-task-edit`](../ase-task-edit/help.md), [`ase-task-integrate`](../ase-task-integrate/help.md),
|
|
113
204
|
[`ase-task-view`](../ase-task-view/help.md), [`ase-task-delete`](../ase-task-delete/help.md).
|
|
114
205
|
|