@a5c-ai/babysitter-github 0.1.1-staging.0a3fc67d
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/AGENTS.md +41 -0
- package/README.md +507 -0
- package/bin/cli.js +104 -0
- package/bin/install-shared.js +450 -0
- package/bin/install.js +81 -0
- package/bin/uninstall.js +76 -0
- package/hooks/session-end.ps1 +68 -0
- package/hooks/session-end.sh +65 -0
- package/hooks/session-start.ps1 +110 -0
- package/hooks/session-start.sh +100 -0
- package/hooks/user-prompt-submitted.ps1 +51 -0
- package/hooks/user-prompt-submitted.sh +41 -0
- package/hooks.json +29 -0
- package/package.json +46 -0
- package/plugin.json +70 -0
- package/scripts/team-install.js +86 -0
- package/skills/assimilate/SKILL.md +17 -0
- package/skills/babysit/SKILL.md +77 -0
- package/skills/call/SKILL.md +17 -0
- package/skills/doctor/SKILL.md +16 -0
- package/skills/help/SKILL.md +15 -0
- package/skills/observe/SKILL.md +15 -0
- package/skills/plan/SKILL.md +16 -0
- package/skills/resume/SKILL.md +15 -0
- package/skills/retrospect/SKILL.md +55 -0
- package/skills/user-install/SKILL.md +15 -0
- package/versions.json +3 -0
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: babysit
|
|
3
|
+
description: >-
|
|
4
|
+
Orchestrate via @babysitter. Use this skill when asked to babysit a run,
|
|
5
|
+
orchestrate a process or whenever it is called explicitly. (babysit,
|
|
6
|
+
babysitter, orchestrate, orchestrate a run, workflow, etc.)
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# babysit
|
|
10
|
+
|
|
11
|
+
Orchestrate `.a5c/runs/<runId>/` through iterative execution.
|
|
12
|
+
|
|
13
|
+
## Dependencies
|
|
14
|
+
|
|
15
|
+
### Babysitter SDK and CLI
|
|
16
|
+
|
|
17
|
+
Read the SDK version from `versions.json` to ensure version compatibility:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
SDK_VERSION=$(node -e "try{console.log(JSON.parse(require('fs').readFileSync('${PLUGIN_ROOT}/versions.json','utf8')).sdkVersion||'latest')}catch{console.log('latest')}")
|
|
21
|
+
sudo npm i -g @a5c-ai/babysitter-sdk@$SDK_VERSION
|
|
22
|
+
# sudo is depending on the env and system
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
then use the CLI alias: CLI="babysitter"
|
|
26
|
+
|
|
27
|
+
**Alternatively, use the CLI alias:** `CLI="npx -y @a5c-ai/babysitter-sdk@$SDK_VERSION"`
|
|
28
|
+
|
|
29
|
+
### jq
|
|
30
|
+
|
|
31
|
+
make sure you have jq installed and available in the path. if not, install it.
|
|
32
|
+
|
|
33
|
+
## Instructions
|
|
34
|
+
|
|
35
|
+
Run the following command to get full orchestration instructions:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
babysitter instructions:babysit-skill --harness github-copilot --json
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Follow the instructions returned by the command above to orchestrate the run.
|
|
42
|
+
|
|
43
|
+
## GitHub Copilot CLI -- In-Turn Loop Model
|
|
44
|
+
|
|
45
|
+
**IMPORTANT**: Unlike Claude Code, GitHub Copilot CLI does NOT have a Stop hook
|
|
46
|
+
that can drive the orchestration loop between turns. The `sessionEnd` hook output
|
|
47
|
+
is ignored and cannot block or restart the session.
|
|
48
|
+
|
|
49
|
+
Therefore, you MUST use **in-turn iteration**: run the full orchestration loop
|
|
50
|
+
within a single session turn. The pattern is:
|
|
51
|
+
|
|
52
|
+
1. `babysitter run:iterate --json` -- get pending actions
|
|
53
|
+
2. For each pending action: execute it (run tasks, post results via `task:post`)
|
|
54
|
+
3. `babysitter run:iterate --json` -- check for more pending actions
|
|
55
|
+
4. Repeat steps 2-3 until run completes or reaches a breakpoint requiring user input
|
|
56
|
+
5. If a breakpoint requires user input, ask the user and post the response, then continue iterating
|
|
57
|
+
|
|
58
|
+
All iteration happens within the same turn -- do NOT rely on hooks to re-enter
|
|
59
|
+
the orchestration loop. The agent drives the loop directly by calling
|
|
60
|
+
`run:iterate` repeatedly until completion.
|
|
61
|
+
|
|
62
|
+
### Loop Example
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
# Initial iterate
|
|
66
|
+
RESULT=$(babysitter run:iterate --run-id "$RUN_ID" --json)
|
|
67
|
+
STATUS=$(echo "$RESULT" | jq -r '.status')
|
|
68
|
+
|
|
69
|
+
while [ "$STATUS" != "completed" ] && [ "$STATUS" != "failed" ]; do
|
|
70
|
+
# Process pending actions from RESULT
|
|
71
|
+
# ... execute tasks, post results ...
|
|
72
|
+
|
|
73
|
+
# Iterate again
|
|
74
|
+
RESULT=$(babysitter run:iterate --run-id "$RUN_ID" --json)
|
|
75
|
+
STATUS=$(echo "$RESULT" | jq -r '.status')
|
|
76
|
+
done
|
|
77
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: call
|
|
3
|
+
description: Start a new Babysitter orchestration run from GitHub Copilot CLI.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# call
|
|
7
|
+
|
|
8
|
+
Load and use the installed `babysit` skill.
|
|
9
|
+
|
|
10
|
+
Resolve the request in `call` mode:
|
|
11
|
+
|
|
12
|
+
- treat everything after `$call` as the initial Babysitter request for a new
|
|
13
|
+
orchestration run
|
|
14
|
+
- create the process, create the run, and enter the Babysitter loop
|
|
15
|
+
- using this always means the user meant an interactive run
|
|
16
|
+
- do not create a separate command surface here; this skill only forwards into
|
|
17
|
+
`babysit`
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: doctor
|
|
3
|
+
description: Diagnose Babysitter run health, integration issues, or orchestration failures.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# doctor
|
|
7
|
+
|
|
8
|
+
Load and use the installed `babysit` skill.
|
|
9
|
+
|
|
10
|
+
Resolve the request in `doctor` mode:
|
|
11
|
+
|
|
12
|
+
- treat everything after `$doctor` as the run selector, subsystem, or problem
|
|
13
|
+
statement to diagnose
|
|
14
|
+
- focus on run health, orchestration correctness, and recovery guidance
|
|
15
|
+
- do not create a separate command surface here; this skill only forwards into
|
|
16
|
+
`babysit`
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: help
|
|
3
|
+
description: Explain Babysitter GitHub Copilot CLI usage, modes, setup, or operational behavior.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# help
|
|
7
|
+
|
|
8
|
+
Load and use the installed `babysit` skill.
|
|
9
|
+
|
|
10
|
+
Resolve the request in `help` mode:
|
|
11
|
+
|
|
12
|
+
- treat everything after `$help` as the help target or question
|
|
13
|
+
- focus on explaining the right Babysitter flow or integration surface
|
|
14
|
+
- do not create a separate command surface here; this skill only forwards into
|
|
15
|
+
`babysit`
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: observe
|
|
3
|
+
description: Observe, inspect, or monitor a Babysitter run.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# observe
|
|
7
|
+
|
|
8
|
+
Load and use the installed `babysit` skill.
|
|
9
|
+
|
|
10
|
+
Resolve the request in `observe` mode:
|
|
11
|
+
|
|
12
|
+
- treat everything after `$observe` as the run selector or observation target
|
|
13
|
+
- focus on inspection, monitoring, and state visibility
|
|
14
|
+
- do not create a separate command surface here; this skill only forwards into
|
|
15
|
+
`babysit`
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: plan
|
|
3
|
+
description: Plan a Babysitter workflow without executing the run.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# plan
|
|
7
|
+
|
|
8
|
+
Load and use the installed `babysit` skill.
|
|
9
|
+
|
|
10
|
+
Resolve the request in `plan` mode:
|
|
11
|
+
|
|
12
|
+
- treat everything after `$plan` as the planning request
|
|
13
|
+
- focus on building the best process possible without creating and running the
|
|
14
|
+
actual run unless the user explicitly changes mode
|
|
15
|
+
- do not create a separate command surface here; this skill only forwards into
|
|
16
|
+
`babysit`
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: resume
|
|
3
|
+
description: Resume an existing Babysitter run from GitHub Copilot CLI.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# resume
|
|
7
|
+
|
|
8
|
+
Load and use the installed `babysit` skill.
|
|
9
|
+
|
|
10
|
+
Resolve the request in `resume` mode:
|
|
11
|
+
|
|
12
|
+
- treat everything after `$resume` as the run selector or run id
|
|
13
|
+
- focus on restoring the orchestration context and continuing the run honestly
|
|
14
|
+
- do not create a separate command surface here; this skill only forwards into
|
|
15
|
+
`babysit`
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: retrospect
|
|
3
|
+
description: Summarize or retrospect on one or more completed Babysitter runs.
|
|
4
|
+
argument-hint: "[run-id...] [--all] Optional run IDs or --all for all runs"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# retrospect
|
|
8
|
+
|
|
9
|
+
Load and use the installed `babysit` skill.
|
|
10
|
+
|
|
11
|
+
Resolve the request in `retrospect` mode:
|
|
12
|
+
|
|
13
|
+
- treat everything after `$retrospect` as the run selector(s) to summarize
|
|
14
|
+
- focus on the run history, outcomes, lessons, and gaps
|
|
15
|
+
- do not create a separate command surface here; this skill only forwards into
|
|
16
|
+
`babysit`
|
|
17
|
+
|
|
18
|
+
## Phase 1: Resolve Target Run(s)
|
|
19
|
+
|
|
20
|
+
- If `--all` or "all" is present in args: list all runs via `ls -lt .a5c/runs/` and collect all completed/failed run IDs
|
|
21
|
+
- If multiple run IDs are provided: use all of them
|
|
22
|
+
- Otherwise: existing behavior (resolve the latest single run)
|
|
23
|
+
- Use interactive prompts to confirm run selection when possible
|
|
24
|
+
|
|
25
|
+
## Phase 2: Load Run Data
|
|
26
|
+
|
|
27
|
+
For each selected run, load:
|
|
28
|
+
- `run.json` metadata
|
|
29
|
+
- Journal events
|
|
30
|
+
- Task definitions and results
|
|
31
|
+
- State snapshots
|
|
32
|
+
|
|
33
|
+
## Phase 3: Analysis
|
|
34
|
+
|
|
35
|
+
Perform standard per-run analysis (outcomes, process effectiveness, suggestions).
|
|
36
|
+
|
|
37
|
+
### Cross-Run Pattern Analysis (multi-run mode)
|
|
38
|
+
|
|
39
|
+
When analyzing multiple runs, additionally cover:
|
|
40
|
+
- **Common failure modes** across runs
|
|
41
|
+
- **Velocity trends** (tasks/time across runs)
|
|
42
|
+
- **Process evolution** (how processes changed over time)
|
|
43
|
+
- **Repeated breakpoint patterns**
|
|
44
|
+
|
|
45
|
+
## Phase 4: Suggestions
|
|
46
|
+
|
|
47
|
+
Provide actionable suggestions for process improvements, optimizations, and fixes.
|
|
48
|
+
|
|
49
|
+
## Phase 5: Implementation
|
|
50
|
+
|
|
51
|
+
If the user agrees, implement improvements to processes, skills, or configuration.
|
|
52
|
+
|
|
53
|
+
## Phase 6: Cleanup Suggestion
|
|
54
|
+
|
|
55
|
+
After analysis, suggest: "Consider running `babysitter cleanup` (or `/babysitter:cleanup`) to clean up old run data and reclaim disk space."
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: user-install
|
|
3
|
+
description: Install the user-level Babysitter GitHub Copilot CLI setup.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# user-install
|
|
7
|
+
|
|
8
|
+
Load and use the installed `babysit` skill.
|
|
9
|
+
|
|
10
|
+
Resolve the request in `user-install` mode:
|
|
11
|
+
|
|
12
|
+
- treat everything after `$user-install` as the user-setup request
|
|
13
|
+
- focus on user profile, user-level install, and personal defaults
|
|
14
|
+
- do not create a separate command surface here; this skill only forwards into
|
|
15
|
+
`babysit`
|
package/versions.json
ADDED