Skillshare Cli E2e TestSAFE
๐ Sync skills, agents, MCP, plugins to all AI CLI tools with one command and simplify team sharing.
Overview
๐ Sync skills, agents, MCP, plugins to all AI CLI tools with one command and simplify team sharing.
0d9340b2ca90OBSERVED ยท 2026-10-08What it tells the agent
The instruction file, verbatim from the audited commit โ this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
---
name: skillshare-cli-e2e-test
description: >-
Run isolated E2E tests in devcontainer from ai_docs/tests runbooks. Use this
skill whenever the user asks to: run an E2E test, execute a test runbook,
validate a feature end-to-end, create a new runbook, or test CLI behavior in
isolation. If you need to run a multi-step CLI validation sequence (init โ
install โ sync โ verify), this is the skill โ it handles ssenv isolation,
flag verification, and structured reporting. Prefer this over ad-hoc docker
exec sequences for any test that follows a runbook or needs reproducible
isolation.
argument-hint: "[runbook-name | new]"
metadata:
targets: [claude, universal]
---
Run isolated E2E tests in devcontainer. $ARGUMENTS specifies runbook name or "new".
Before acting, run `python3 scripts/ai-context.py testing`. The topic is the source of truth for isolation, runbook quality and reporting rules; this skill retains the execution flow and mdproof recipes.
## Flow
### Phase 0: Environment Check
1. Confirm devcontainer is running and get container ID:
```bash
CONTAINER=$(docker compose -f .devcontainer/docker-compose.yml ps -q skillshare-devcontainer)
```
- If empty โ prompt user: `docker compose -f .devcontainer/docker-compose.yml up -d`
- Ensure `CONTAINER` is set for all subsequent `docker exec` calls.
2. Confirm Linux binary is available:
```bash
docker exec $CONTAINER bash -c \
'/workspace/.devcontainer/ensure-skillshare-linux-binary.sh && ss version'
```
3. Confirm mdproof is installed:
```bash
docker exec $CONTAINER /workspace/.devcontainer/ensure-mdproof.sh
```
This auto-installs from GitHub release, or falls back to `/workspace/bin/mdproof` (local dev binary).
4. Check for lessons learned from previous runs:
```bash
test -f /workspace/.mdproof/lessons-learned.md && cat /workspace/.mdproof/lessons-learned.md
```
If the file exists, read it before writing or debugging runbooks โ it contains known gotchas and assertion patterns.
### Phase 1: Detect Scope
1. Preview all available runbooks via the container:
```bash
docker exec $CONTAINER mdproof --dry-run --report json /workspace/ai_docs/tests/
```
This returns JSON with every runbook's steps, commands, and expected assertions โ no manual markdown parsing needed. Use this to understand what each runbook covers.
2. Identify recent changes (unstaged + recent commits):
```bash
git diff --name-only HEAD~3
```
3. Match changes to relevant runbooks (compare changed file paths against step commands in the JSON output).
### Phase 2: Select Tests
Prompt user (via AskUserQuestion):
- **Option A**: Run existing runbook (list all available + mark those related to recent changes)
- **Option B**: Auto-generate new test script based on recent changes
- **Option C**: If $ARGUMENTS specifies a runbook, skip to Phase 3
### Phase 3: Prepare & Execute
#### Running existing runbook:
1. Create isolated environment with **auto-initialization**:
```bash
ENV_NAME="e2e-$(date +%Y%m%d-%H%M%S)"
# Use --init to automatically run 'ss init -g' with all targets
docker exec $CONTAINER ssenv create "$ENV_NAME" --init
```
2. Execute the entire runbook via mdproof inside the container:
```bash
docker exec $CONTAINER env SKILLSHARE_DEV_ALLOW_WORKSPACE_PROJECT=1 \
ssenv enter "$ENV_NAME" -- \
mdproof --report json \
/workspace/ai_docs/tests/<runbook_file>.md
```
mdproof executes each step (`bash -c <command>`) in the ssenv-isolated HOME, then returns structured JSON:
```json
{
"version": "1",
"runbook": "<runbook_file>.md",
"duration_ms": 12345,
"summary": { "total": 7, "passed": 5, "failed": 1, "skipped": 1 },
"steps": [
{
"step": { "number": 1, "title": "...", "command": "...", "expected": ["..."] },
"status": "passed", // "passed" | "failed" | "skipped"
"exit_code": 0,
"stdout": "...",
"stderr": "..."
}
]
}
```
3. Analyze the JSON output:
- **All passed** โ proceed to Phase 4
- **Any failed** โ filter for failures only (full JSON can be too large for terminal output):
```bash
mdproof --report json runbook.md 2>&1 | jq '{
summary: .summary,
failed: [.steps[] | select(.status == "failed") | {
step: .step.number, title: .step.title,
exit_code: .exit_code,
failed_assertions: [.assertions[]? | select(.matched == false) | .pattern],
stderr: (.stderr // "" | .[0:200])
}]
}'
```
- **Skipped steps** (executor=`manual`) โ these need manual verification, run them individually:
```bash
docker exec $CONTAINER env SKILLSHARE_DEV_ALLOW_WORKSPACE_PROJECT=1 \
ssenv enter "$ENV_NAME" -- <command from step.command>
```
4. For failed steps, debug individually using manual docker exec (same as before):
```bash
docker exec $CONTAINER env SKILLSHARE_DEV_ALLOW_WORKSPACE_PROJECT=1 \
ssenv enter "$ENV_NAME" -- bash -c '<failed step command>'
```
- **Prefer `--json` + `jq` for assertions** โ see the JSON Reference below
#### Generating new runbook:
1. Read `git diff HEAD~3` to find changed files in `cmd/skillshare/` or `internal/`
2. Read changed files to understand new/modified functionality
3. **Validate all CLI flags before writing** โ for every `ss <command> <flag>` in the runbook:
- Grep `cmd/skillshare/<command>.go` for the exact flag string (e.g. `"--force"`)
- Run `ss <command> --help` inside container if needed
- Common mistakes to avoid:
- `uninstall --yes` โ **wrong**, use `--force` / `-f`
- `init --target <name>` โ **wrong**, `init` has no `--target` flag
- `init -p` has a **completely separate flag set** from global `init` โ only supports `--targets`, `--discover`, `--select`, `--mode`, `--dry-run`. Global-only flags like `--no-copy`, `--no-skill`, `--no-git`, `--all-targets`, `--force` do NOTTrust audit
SAFEgrade B ยท trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | WARN |
| L1 | Static analysis of the code | NA |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (1)
.devcontainer/bin/dev-servers
Gates applied: no_behavioural_pass.
0d9340b2ca90full audit observations/trust-audit/skill/runkids__skillshare-cli-e2e-test.json ยท Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-08 | 0d9340b2ca90 | SAFE | B | 89 | first audit |
Questions
What does the Skillshare Cli E2e Test skill do?
๐ Sync skills, agents, MCP, plugins to all AI CLI tools with one command and simplify team sharing.
Is Skillshare Cli E2e Test safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can Skillshare Cli E2e Test access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
How current is this page?
The grade is for one exact copy of the source (0d9340b2ca90), read on 2026-10-08. The repository is watched, and a new audit runs when it changes โ this is the first audit.