soba-agent 0.4.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/README.md +52 -0
- package/bin/soba.js +7 -0
- package/dist/cli.js +31079 -0
- package/package.json +50 -0
- package/skills/bug-fix/SKILL.md +61 -0
- package/skills/code-review/SKILL.md +61 -0
- package/skills/codebase-orientation/SKILL.md +60 -0
- package/skills/commit-message/SKILL.md +59 -0
- package/skills/context-handoff/SKILL.md +60 -0
- package/skills/feature-implementation/SKILL.md +61 -0
- package/skills/fix-until-green/SKILL.md +61 -0
- package/skills/git-summary/SKILL.md +60 -0
- package/skills/lint-fix/SKILL.md +63 -0
- package/skills/memory-capture/SKILL.md +60 -0
- package/skills/pr-description/SKILL.md +62 -0
- package/skills/test-authoring/SKILL.md +60 -0
- package/skills/version-bump/SKILL.md +60 -0
- package/src/audio/dangerous.wav +0 -0
- package/src/audio/done.wav +0 -0
- package/src/audio/error.wav +0 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pr-description
|
|
3
|
+
description: Generate structured pull request descriptions from branch changes.
|
|
4
|
+
soba:
|
|
5
|
+
version: 1
|
|
6
|
+
triggers:
|
|
7
|
+
- pull request description
|
|
8
|
+
- pr body
|
|
9
|
+
- merge request summary
|
|
10
|
+
memory-policy: none
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Pull Request Description
|
|
14
|
+
|
|
15
|
+
## Purpose
|
|
16
|
+
|
|
17
|
+
Create a reviewer-ready pull request description from branch commits, diffs, and project-specific requirements.
|
|
18
|
+
|
|
19
|
+
## Triggers
|
|
20
|
+
|
|
21
|
+
Use this skill when the user asks for a PR description, merge request body, release-oriented change summary, or reviewer checklist.
|
|
22
|
+
|
|
23
|
+
## Inputs To Inspect
|
|
24
|
+
|
|
25
|
+
- Project instructions for PR format.
|
|
26
|
+
- Current branch name.
|
|
27
|
+
- Comparison base requested by the user or the repository default.
|
|
28
|
+
- Commit log for the branch.
|
|
29
|
+
- Changed files, diff stat, and relevant detailed diffs.
|
|
30
|
+
- Test or verification evidence from the current task when available.
|
|
31
|
+
|
|
32
|
+
## Procedure
|
|
33
|
+
|
|
34
|
+
1. Determine the base branch or comparison range.
|
|
35
|
+
2. Inspect branch commits and changed file statistics.
|
|
36
|
+
3. Read detailed diffs for files that define the main behavior change.
|
|
37
|
+
4. Group changes by purpose and user impact.
|
|
38
|
+
5. List verification that actually ran, preserving command names.
|
|
39
|
+
6. Call out breaking changes, migrations, risks, or follow-up work only when supported by evidence.
|
|
40
|
+
7. Format the PR body using project instructions or a compact default structure: Summary, Changes, Verification, Risk.
|
|
41
|
+
|
|
42
|
+
## Verification Contract
|
|
43
|
+
|
|
44
|
+
The PR description must match the inspected branch diff and must not claim tests, screenshots, migrations, issues, or breaking changes that were not observed.
|
|
45
|
+
|
|
46
|
+
## Failure Recovery
|
|
47
|
+
|
|
48
|
+
If the base branch cannot be determined, inspect local branches and ask for the intended base only if the ambiguity changes the result. If the branch has many unrelated changes, group by directory and make the scope visible.
|
|
49
|
+
|
|
50
|
+
## Memory Policy
|
|
51
|
+
|
|
52
|
+
Do not write project memory. Read memory only if it was already injected and contains a PR template or reviewer convention.
|
|
53
|
+
|
|
54
|
+
## Stop Conditions
|
|
55
|
+
|
|
56
|
+
Stop after producing the requested PR description or after identifying that a missing comparison base prevents a correct description.
|
|
57
|
+
|
|
58
|
+
## Anti-Patterns
|
|
59
|
+
|
|
60
|
+
- Do not invent verification results.
|
|
61
|
+
- Do not include boilerplate checklists unless the project expects them.
|
|
62
|
+
- Do not hide unreviewed or high-risk areas.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: test-authoring
|
|
3
|
+
description: Add focused tests from use cases, regressions, or behavior contracts.
|
|
4
|
+
soba:
|
|
5
|
+
version: 1
|
|
6
|
+
triggers:
|
|
7
|
+
- write tests
|
|
8
|
+
- add coverage
|
|
9
|
+
- regression test
|
|
10
|
+
memory-policy: read
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Test Authoring
|
|
14
|
+
|
|
15
|
+
## Purpose
|
|
16
|
+
|
|
17
|
+
Create tests that prove behavior through realistic inputs, clear assertions, and project-native tooling.
|
|
18
|
+
|
|
19
|
+
## Triggers
|
|
20
|
+
|
|
21
|
+
Use this skill when the user asks to add tests, improve coverage, capture a regression, or turn use cases into automated checks.
|
|
22
|
+
|
|
23
|
+
## Inputs To Inspect
|
|
24
|
+
|
|
25
|
+
- Project instructions for test framework and runtime.
|
|
26
|
+
- Use cases, bug reports, or acceptance criteria.
|
|
27
|
+
- Existing tests near the target module.
|
|
28
|
+
- Public APIs and fixtures already used by the project.
|
|
29
|
+
- Commands for targeted and full verification.
|
|
30
|
+
|
|
31
|
+
## Procedure
|
|
32
|
+
|
|
33
|
+
1. Read project instructions and nearby test style.
|
|
34
|
+
2. Map each requested behavior or edge case to a test case.
|
|
35
|
+
3. Prefer integration-style tests with real files or processes when the project pattern supports it.
|
|
36
|
+
4. Keep mocks minimal and explicit.
|
|
37
|
+
5. Make the test fail for the intended reason when practical, then implement or adjust code only if the user requested a fix too.
|
|
38
|
+
6. Run the targeted test file, then broader checks when production code changed.
|
|
39
|
+
|
|
40
|
+
## Verification Contract
|
|
41
|
+
|
|
42
|
+
New or updated tests must pass with the project test command. If production code changed, verification must include tests that exercise the changed behavior.
|
|
43
|
+
|
|
44
|
+
## Failure Recovery
|
|
45
|
+
|
|
46
|
+
If the test is flaky or over-specified, reduce the assertion to the behavior contract. If setup is too expensive, reuse existing fixtures or build a smaller deterministic fixture.
|
|
47
|
+
|
|
48
|
+
## Memory Policy
|
|
49
|
+
|
|
50
|
+
Read memory for known test conventions. Write memory only for stable, verified test patterns that recur across the project.
|
|
51
|
+
|
|
52
|
+
## Stop Conditions
|
|
53
|
+
|
|
54
|
+
Stop when the requested tests pass and accurately cover the behavior, or when missing requirements prevent a meaningful assertion.
|
|
55
|
+
|
|
56
|
+
## Anti-Patterns
|
|
57
|
+
|
|
58
|
+
- Do not assert implementation details unless they are the contract.
|
|
59
|
+
- Do not add tests that only duplicate type checks.
|
|
60
|
+
- Do not hide failures by weakening assertions unrelated to the requested behavior.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: version-bump
|
|
3
|
+
description: Bump project version files and prepare the matching release commit.
|
|
4
|
+
soba:
|
|
5
|
+
version: 1
|
|
6
|
+
triggers:
|
|
7
|
+
- version bump
|
|
8
|
+
- release version
|
|
9
|
+
- bump package
|
|
10
|
+
memory-policy: read
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Version Bump
|
|
14
|
+
|
|
15
|
+
## Purpose
|
|
16
|
+
|
|
17
|
+
Update project version references consistently and verify the release-ready change.
|
|
18
|
+
|
|
19
|
+
## Triggers
|
|
20
|
+
|
|
21
|
+
Use this skill when the user asks to bump a version, prepare a release version, or update version references before a release commit.
|
|
22
|
+
|
|
23
|
+
## Inputs To Inspect
|
|
24
|
+
|
|
25
|
+
- Project instructions for release workflow.
|
|
26
|
+
- Version fields in package manifests.
|
|
27
|
+
- CLI or source constants that print the version.
|
|
28
|
+
- Tests that assert the version string.
|
|
29
|
+
- Recent commits or the exact version requested by the user.
|
|
30
|
+
|
|
31
|
+
## Procedure
|
|
32
|
+
|
|
33
|
+
1. Prefer the exact version or bump type specified by the user.
|
|
34
|
+
2. If the user did not specify a bump, inspect recent commits and choose patch unless features or breaking changes clearly require minor or major.
|
|
35
|
+
3. Locate every authoritative version reference used by runtime code and tests.
|
|
36
|
+
4. Update only those version references and any directly required snapshots or tests.
|
|
37
|
+
5. Run the project-required verification commands for version changes.
|
|
38
|
+
6. Prepare a release commit only when the user asked for a commit and verification passes.
|
|
39
|
+
|
|
40
|
+
## Verification Contract
|
|
41
|
+
|
|
42
|
+
The manifest version, runtime version output, and version assertions must agree. Required tests, linting, type checks, and build commands for the project must pass before reporting completion.
|
|
43
|
+
|
|
44
|
+
## Failure Recovery
|
|
45
|
+
|
|
46
|
+
If version references disagree before the change, report the mismatch and update the authoritative set consistently. If verification fails after the bump, fix version-related failures first and avoid unrelated refactors.
|
|
47
|
+
|
|
48
|
+
## Memory Policy
|
|
49
|
+
|
|
50
|
+
Read project memory for known release conventions if available. Write memory only after a verified, repeated release convention is discovered and it contains no secrets.
|
|
51
|
+
|
|
52
|
+
## Stop Conditions
|
|
53
|
+
|
|
54
|
+
Stop when all version references are updated and verification passes, or when the requested target version conflicts with project constraints.
|
|
55
|
+
|
|
56
|
+
## Anti-Patterns
|
|
57
|
+
|
|
58
|
+
- Do not bump versions opportunistically during unrelated work.
|
|
59
|
+
- Do not create tags or publish packages unless explicitly requested.
|
|
60
|
+
- Do not infer a major release without concrete breaking-change evidence.
|
|
Binary file
|
|
Binary file
|
|
Binary file
|