@codebehind/agent-workflow 1.1.5 → 1.1.7
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
CHANGED
package/package.json
CHANGED
|
@@ -64,7 +64,7 @@ Use `_template.md` when creating specs by hand.
|
|
|
64
64
|
From the repo root, run:
|
|
65
65
|
|
|
66
66
|
```bash
|
|
67
|
-
scripts/agent/prepare-spec <slug> <notion-link>
|
|
67
|
+
scripts/agent/prepare-spec.sh <slug> <notion-link>
|
|
68
68
|
```
|
|
69
69
|
|
|
70
70
|
This script:
|
|
@@ -74,6 +74,14 @@ This script:
|
|
|
74
74
|
|
|
75
75
|
The agent fetches the Notion page, maps content to the spec template, asks clarifying questions, then writes `.agent-workflow/specs/<date>_<slug>.md` with `status: draft`.
|
|
76
76
|
|
|
77
|
+
Add `--interactive` to follow along in the same session and skip the automatic GitLab MR:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
scripts/agent/prepare-spec.sh --interactive <slug> <notion-link>
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Claude launches interactively with the first message pre-filled. The worktree and branch are still created — but nothing is pushed or opened in GitLab unless you do it manually.
|
|
84
|
+
|
|
77
85
|
### Option 2: Direct (no worktrees) — from a Notion page or description
|
|
78
86
|
|
|
79
87
|
Skip the script and run everything yourself:
|
|
@@ -121,6 +129,12 @@ This script:
|
|
|
121
129
|
- starts a Claude session inside that worktree
|
|
122
130
|
- invokes `/implement-spec` with the given spec file
|
|
123
131
|
|
|
132
|
+
Add `--interactive` to follow along in the same session and skip the automatic GitLab MR:
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
scripts/agent/implement-task.sh --interactive <task-name> <spec-file or spec-name>
|
|
136
|
+
```
|
|
137
|
+
|
|
124
138
|
### Option 2: Direct (no worktrees)
|
|
125
139
|
|
|
126
140
|
```bash
|
|
@@ -79,7 +79,10 @@ Claude Code will read `CLAUDE.md` and `.claude/rules/agentic-workflow.md` automa
|
|
|
79
79
|
|
|
80
80
|
**Scripted (auto worktree + branch):**
|
|
81
81
|
```bash
|
|
82
|
-
scripts/agent/prepare-spec <spec-name> <notion-link>
|
|
82
|
+
scripts/agent/prepare-spec.sh <spec-name> <notion-link>
|
|
83
|
+
|
|
84
|
+
# Add --interactive to follow along and skip automatic GitLab MR:
|
|
85
|
+
scripts/agent/prepare-spec.sh --interactive <spec-name> <notion-link>
|
|
83
86
|
```
|
|
84
87
|
|
|
85
88
|
**Direct (manual branch, no worktree):**
|
|
@@ -96,6 +99,9 @@ claude
|
|
|
96
99
|
**Scripted (auto worktree + branch):**
|
|
97
100
|
```bash
|
|
98
101
|
scripts/agent/implement-task.sh <task-name> <spec-file or spec-name>
|
|
102
|
+
|
|
103
|
+
# Add --interactive to follow along and skip automatic GitLab MR:
|
|
104
|
+
scripts/agent/implement-task.sh --interactive <task-name> <spec-file or spec-name>
|
|
99
105
|
```
|
|
100
106
|
|
|
101
107
|
**Direct (manual branch, no worktree):**
|
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
set -euo pipefail
|
|
3
3
|
|
|
4
|
+
INTERACTIVE=false
|
|
5
|
+
|
|
6
|
+
# Parse flags
|
|
7
|
+
POSITIONAL=()
|
|
8
|
+
for arg in "$@"; do
|
|
9
|
+
case "$arg" in
|
|
10
|
+
--interactive) INTERACTIVE=true ;;
|
|
11
|
+
*) POSITIONAL+=("$arg") ;;
|
|
12
|
+
esac
|
|
13
|
+
done
|
|
14
|
+
set -- "${POSITIONAL[@]}"
|
|
15
|
+
|
|
4
16
|
if [[ $# -lt 2 ]]; then
|
|
5
|
-
echo "Usage: $0 <slug> <spec_name>" >&2
|
|
17
|
+
echo "Usage: $0 [--interactive] <slug> <spec_name>" >&2
|
|
6
18
|
exit 1
|
|
7
19
|
fi
|
|
8
20
|
|
|
@@ -16,4 +28,10 @@ WORKTREE_DIR=$(echo "${OUTPUT}" | grep '^WORKTREE_DIR=' | cut -d= -f2-)
|
|
|
16
28
|
|
|
17
29
|
echo "Worktree: ${WORKTREE_DIR}" >&2
|
|
18
30
|
cd "${WORKTREE_DIR}"
|
|
19
|
-
|
|
31
|
+
|
|
32
|
+
if [[ "$INTERACTIVE" == true ]]; then
|
|
33
|
+
echo "Starting interactive Claude session (GitLab flow disabled)..." >&2
|
|
34
|
+
exec claude --dangerously-skip-permissions --message "use implement-spec skill from ${SPEC_NAME}. Skip GitLab flow — do not push or open an MR."
|
|
35
|
+
else
|
|
36
|
+
exec claude --dangerously-skip-permissions -p "use implement-spec skill from ${SPEC_NAME}"
|
|
37
|
+
fi
|
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
set -euo pipefail
|
|
3
3
|
|
|
4
|
+
INTERACTIVE=false
|
|
5
|
+
|
|
6
|
+
# Parse flags
|
|
7
|
+
POSITIONAL=()
|
|
8
|
+
for arg in "$@"; do
|
|
9
|
+
case "$arg" in
|
|
10
|
+
--interactive) INTERACTIVE=true ;;
|
|
11
|
+
*) POSITIONAL+=("$arg") ;;
|
|
12
|
+
esac
|
|
13
|
+
done
|
|
14
|
+
set -- "${POSITIONAL[@]}"
|
|
15
|
+
|
|
4
16
|
if [[ $# -lt 2 ]]; then
|
|
5
|
-
echo "Usage: $0 <slug> <notion_url>" >&2
|
|
17
|
+
echo "Usage: $0 [--interactive] <slug> <notion_url>" >&2
|
|
6
18
|
exit 1
|
|
7
19
|
fi
|
|
8
20
|
|
|
@@ -16,4 +28,10 @@ WORKTREE_DIR=$(echo "${OUTPUT}" | grep '^WORKTREE_DIR=' | cut -d= -f2-)
|
|
|
16
28
|
|
|
17
29
|
echo "Worktree: ${WORKTREE_DIR}" >&2
|
|
18
30
|
cd "${WORKTREE_DIR}"
|
|
19
|
-
|
|
31
|
+
|
|
32
|
+
if [[ "$INTERACTIVE" == true ]]; then
|
|
33
|
+
echo "Starting interactive Claude session (GitLab flow disabled)..." >&2
|
|
34
|
+
exec claude --dangerously-skip-permissions --message "use prepare-spec skill from ${NOTION_URL}. Skip GitLab flow — do not push or open an MR."
|
|
35
|
+
else
|
|
36
|
+
exec claude --dangerously-skip-permissions -p "use prepare-spec skill from ${NOTION_URL}"
|
|
37
|
+
fi
|