opencode-froggy 0.7.0 → 0.7.1
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
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
<a href="https://www.npmjs.com/package/opencode-froggy"><img src="https://badge.fury.io/js/opencode-froggy.svg" alt="npm version"></a>
|
|
8
8
|
</p>
|
|
9
9
|
|
|
10
|
-
OpenCode plugin providing hooks, specialized agents (architect, doc-writer, rubber-duck, partner), skills (code-
|
|
10
|
+
OpenCode plugin providing hooks, specialized agents (architect, doc-writer, rubber-duck, partner, code-reviewer), skills (code-simplify, code-release), and tools (gitingest, blockchain queries, agent-promote).
|
|
11
11
|
|
|
12
12
|
---
|
|
13
13
|
|
|
@@ -17,8 +17,8 @@ OpenCode plugin providing hooks, specialized agents (architect, doc-writer, rubb
|
|
|
17
17
|
- [Commands](#commands)
|
|
18
18
|
- [Agents](#agents)
|
|
19
19
|
- [Skills](#skills)
|
|
20
|
-
- [code-review](#code-review)
|
|
21
20
|
- [code-simplify](#code-simplify)
|
|
21
|
+
- [code-release](#code-release)
|
|
22
22
|
- [Tools](#tools)
|
|
23
23
|
- [gitingest](#gitingest)
|
|
24
24
|
- [prompt-session](#prompt-session)
|
|
@@ -74,6 +74,8 @@ Alternatively, clone or copy the plugin files to one of these directories:
|
|
|
74
74
|
| `/commit-push` | Stage, commit, and push changes with user confirmation | `build` |
|
|
75
75
|
| `/diff-summary [source] [target]` | Show working tree changes or diff between branches | - |
|
|
76
76
|
| `/doc-changes` | Update documentation based on uncommitted changes (new features only) | `doc-writer` |
|
|
77
|
+
| `/review-changes` | Review uncommitted changes (staged, unstaged, untracked) | `code-reviewer` |
|
|
78
|
+
| `/review-pr <source> <target>` | Review diff from source branch into target branch | `code-reviewer` |
|
|
77
79
|
| `/send-to [agent] <message>` | Send a message to a child session (subagent) to continue the conversation | - |
|
|
78
80
|
| `/tests-coverage` | Run the full test suite with coverage report and suggest fixes for failures | `build` |
|
|
79
81
|
|
|
@@ -105,6 +107,7 @@ Shows stats overview, commits, files changed, and full diff between branches.
|
|
|
105
107
|
|-------|------|-------------|
|
|
106
108
|
| `architect` | subagent | Strategic technical advisor providing high-leverage guidance on architecture, code structure, and complex engineering trade-offs. Read-only. |
|
|
107
109
|
| `doc-writer` | subagent | Technical writer that crafts clear, comprehensive documentation (README, API docs, architecture docs, user guides). |
|
|
110
|
+
| `code-reviewer` | subagent | Read-only code review agent for quality, correctness, security, and maintainability feedback. |
|
|
108
111
|
| `partner` | subagent | Strategic ideation partner that breaks frames, expands solution spaces, and surfaces non-obvious strategic options. Read-only. |
|
|
109
112
|
| `rubber-duck` | subagent | Strategic thinking partner for exploratory dialogue. Challenges assumptions, asks pointed questions, and sharpens thinking through conversational friction. Read-only. |
|
|
110
113
|
|
|
@@ -114,18 +117,13 @@ Shows stats overview, commits, files changed, and full diff between branches.
|
|
|
114
117
|
|
|
115
118
|
Skills are loaded on-demand to provide specialized capabilities during a session.
|
|
116
119
|
|
|
117
|
-
### code-
|
|
120
|
+
### code-release
|
|
118
121
|
|
|
119
|
-
|
|
122
|
+
Prepare releases with version bumps, changelog updates, and tags.
|
|
120
123
|
|
|
121
|
-
- **Purpose**:
|
|
122
|
-
- **Activation**: On user request
|
|
123
|
-
- **
|
|
124
|
-
- Logic & stability (edge cases, race conditions, state transitions)
|
|
125
|
-
- Security (injection risks, validation, sensitive data exposure)
|
|
126
|
-
- Performance (resource leaks, O(n²) operations, unnecessary calls)
|
|
127
|
-
- Maintainability (SOLID violations, excessive complexity)
|
|
128
|
-
- **Output**: Numbered blocking issues with evidence and fix suggestions, plus optional simplification candidates
|
|
124
|
+
- **Purpose**: Guide release preparation steps and require confirmation before changing release artifacts
|
|
125
|
+
- **Activation**: On user request to prepare or perform a release
|
|
126
|
+
- **Constraints**: Avoid changing versions, tags, or changelogs without explicit confirmation
|
|
129
127
|
|
|
130
128
|
### code-simplify
|
|
131
129
|
|
|
@@ -1,69 +1,35 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
description: Reviews code for quality, correctness, and security
|
|
3
|
+
mode: subagent
|
|
4
|
+
temperature: 0.1
|
|
5
|
+
tools:
|
|
6
|
+
write: false
|
|
7
|
+
edit: false
|
|
8
|
+
permission:
|
|
9
|
+
bash:
|
|
10
|
+
"*": "deny"
|
|
11
|
+
"git fetch*": allow
|
|
12
|
+
"git diff*": allow
|
|
13
|
+
"git log*": allow
|
|
14
|
+
"git show*": allow
|
|
15
|
+
"git status*": allow
|
|
6
16
|
---
|
|
7
17
|
|
|
8
|
-
# Code Review
|
|
18
|
+
# Code Review Agent
|
|
9
19
|
|
|
10
|
-
## CRITICAL CONSTRAINT
|
|
11
20
|
|
|
12
|
-
|
|
13
|
-
- Use the `write` tool
|
|
14
|
-
- Use the `edit` tool
|
|
15
|
-
- Modify any files
|
|
16
|
-
- Execute commands that change state
|
|
21
|
+
You are in code review mode. Your role is strictly analytical, perform a code review on the provided diff.
|
|
17
22
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
## Step 1: Retrieve changes
|
|
21
|
-
|
|
22
|
-
Determine the review scope based on user request:
|
|
23
|
-
|
|
24
|
-
### Working tree review (local changes)
|
|
25
|
-
|
|
26
|
-
If reviewing uncommitted local changes, run `/diff-summary` without arguments:
|
|
27
|
-
|
|
28
|
-
```
|
|
29
|
-
/diff-summary
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
This retrieves:
|
|
33
|
-
- Staged changes
|
|
34
|
-
- Unstaged changes
|
|
35
|
-
- Untracked files content
|
|
36
|
-
|
|
37
|
-
### Branch/PR review
|
|
38
|
-
|
|
39
|
-
If the user asks to review a PR or compare branches, run `/diff-summary` with branch arguments:
|
|
40
|
-
|
|
41
|
-
```
|
|
42
|
-
/diff-summary <source-branch> <target-branch>
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
Examples:
|
|
46
|
-
- `/diff-summary feature-branch` — compare feature-branch to HEAD
|
|
47
|
-
- `/diff-summary feature-branch main` — compare feature-branch into main
|
|
48
|
-
|
|
49
|
-
This retrieves:
|
|
50
|
-
- Stats overview (files changed, insertions, deletions)
|
|
51
|
-
- Commits between branches
|
|
52
|
-
- Full diff
|
|
53
|
-
|
|
54
|
-
Focus only on the changes between the specified branches.
|
|
55
|
-
|
|
56
|
-
## Step 2: Perform code review
|
|
57
|
-
|
|
58
|
-
### Guidelines
|
|
23
|
+
## Guidelines
|
|
59
24
|
|
|
60
25
|
- **Pragmatic over pedantic**: Flag real problems, not style preferences
|
|
61
26
|
- **Evidence-based**: Every issue must be traceable to specific diff lines
|
|
62
27
|
- **Actionable**: Every issue must have a clear path to resolution
|
|
63
28
|
- **Production-minded**: Assume this code ships to users
|
|
64
29
|
|
|
65
|
-
|
|
66
|
-
|
|
30
|
+
## Scope
|
|
31
|
+
|
|
32
|
+
### CRITICAL FOCUS AREAS:
|
|
67
33
|
1. **Discipline:** Only review code that is part of the diff. Do not flag pre-existing issues in unchanged code.
|
|
68
34
|
2. **Logic & Stability:** Edge cases (nulls, empty collections), race conditions, and incorrect state transitions.
|
|
69
35
|
3. **Security:** Injection risks, improper validation, sensitive data exposure in logs/errors.
|
|
@@ -71,8 +37,7 @@ Focus only on the changes between the specified branches.
|
|
|
71
37
|
5. **Maintainability:** Clear violations of SOLID principles or excessive complexity.
|
|
72
38
|
6. **Convention:** AGENTS.md violation (only if AGENTS.md content is available)
|
|
73
39
|
|
|
74
|
-
###
|
|
75
|
-
|
|
40
|
+
### SIMPLIFICATION FOCUS:
|
|
76
41
|
Identify opportunities to simplify while preserving exact functionality:
|
|
77
42
|
- Reduce unnecessary complexity and nesting
|
|
78
43
|
- Remove redundant code/abstractions introduced by the change
|
|
@@ -82,8 +47,7 @@ Identify opportunities to simplify while preserving exact functionality:
|
|
|
82
47
|
- Remove comments that restate obvious code
|
|
83
48
|
- Prefer explicit code over dense one-liners
|
|
84
49
|
|
|
85
|
-
###
|
|
86
|
-
|
|
50
|
+
### OPERATIONAL RULES:
|
|
87
51
|
- **No scope creep:** Do not propose refactors outside the diff unless required to fix a blocking issue.
|
|
88
52
|
- **Evidence-Based Only:** Never flag "potential" issues without explaining *why* they would occur based on the code provided.
|
|
89
53
|
- **AGENTS.md Protocol:** If `AGENTS.md` exists in the repo, check it for project-specific rules. If not found, ignore all AGENTS.md instructions.
|
|
@@ -91,23 +55,35 @@ Identify opportunities to simplify while preserving exact functionality:
|
|
|
91
55
|
- **Safety First:** Every suggestion must be provably behavior-preserving. When in doubt, omit it.
|
|
92
56
|
- **Non-stylistic simplification:** Simplification candidates must be justified by reduced complexity/duplication/nesting in the diff, not stylistic preference.
|
|
93
57
|
|
|
94
|
-
##
|
|
58
|
+
## Output Format
|
|
95
59
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
A numbered list of blocking issues. Each issue MUST include:
|
|
99
|
-
- **reason**: "bug" | "security" | "correctness" | "AGENTS.md adherence"
|
|
100
|
-
- **location**: `<path>::<symbol>` or `<path>::<global>` + `<lines>` if available
|
|
101
|
-
- **evidence**: quote the exact diff hunk lines
|
|
102
|
-
- **fix**: either a committable patch (max 5 lines per file) or a concise, explicit instruction if a patch would exceed this limit
|
|
103
|
-
|
|
104
|
-
If no blocking issues are found, explicitly state: "No blocking issues found."
|
|
60
|
+
## Code review
|
|
105
61
|
|
|
62
|
+
### Issues
|
|
63
|
+
- A numbered list of blocking issues
|
|
64
|
+
- Each issue MUST include:
|
|
65
|
+
- reason: "bug" | "security" | "correctness" | "AGENTS.md adherence"
|
|
66
|
+
- location: `<path>::<symbol>` or `<path>::<global>` + `<lines>` if available
|
|
67
|
+
- evidence: quote the exact diff hunk lines
|
|
68
|
+
- fix:
|
|
69
|
+
- either a committable patch (max 5 lines per file)
|
|
70
|
+
- or a concise, explicit instruction if a patch would exceed this limit
|
|
71
|
+
|
|
72
|
+
If no blocking issues are found, explicitly state:
|
|
73
|
+
- "No blocking issues found."
|
|
74
|
+
|
|
75
|
+
|
|
106
76
|
### Simplification candidates (optional)
|
|
77
|
+
Include this section only if there are meaningful refactors that are clearly behavior-preserving.
|
|
78
|
+
- A numbered list of candidates.
|
|
79
|
+
- Each candidate MUST include:
|
|
80
|
+
- goal: what clarity/maintainability improves
|
|
81
|
+
- constraints: "no behavior change", and any diff-specific invariants (e.g., "preserve error messages", "keep API shape")
|
|
82
|
+
- evidence: quote the exact diff hunk lines
|
|
83
|
+
- location: `<path>::<symbol>` or `<path>::<global>` + `<lines>` if available
|
|
84
|
+
- suggested change:
|
|
85
|
+
- either a committable patch (max 5 lines per file)
|
|
86
|
+
- or a concise refactor plan (if patch would exceed this limit)
|
|
87
|
+
|
|
107
88
|
|
|
108
|
-
|
|
109
|
-
- **goal**: what clarity/maintainability improves
|
|
110
|
-
- **constraints**: "no behavior change", and any diff-specific invariants
|
|
111
|
-
- **evidence**: quote the exact diff hunk lines
|
|
112
|
-
- **location**: `<path>::<symbol>` or `<path>::<global>` + `<lines>` if available
|
|
113
|
-
- **suggested change**: either a committable patch (max 5 lines per file) or a concise refactor plan
|
|
89
|
+
```
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Review uncommitted changes (staged + unstaged, incl. untracked diffs)
|
|
3
|
+
agent: code-reviewer
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Review: Working Tree → HEAD
|
|
7
|
+
|
|
8
|
+
## Status
|
|
9
|
+
!`git status --porcelain`
|
|
10
|
+
|
|
11
|
+
## Staged Changes
|
|
12
|
+
!`git diff --cached --stat`
|
|
13
|
+
!`git diff --cached`
|
|
14
|
+
|
|
15
|
+
## Unstaged Changes
|
|
16
|
+
!`git diff --stat`
|
|
17
|
+
!`git diff`
|
|
18
|
+
|
|
19
|
+
## Untracked Files Content
|
|
20
|
+
!`bash -c 'git ls-files --others --exclude-standard | while read f; do [ -f "$f" ] && echo "=== $f ===" && sed -n "1,50p" "$f" && sed -n "51p" "$f" | grep -q . && echo "... (truncated)"; done'`
|
|
21
|
+
|
|
22
|
+
Review the above changes for quality, correctness, and adherence to project guidelines.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "opencode-froggy",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.1",
|
|
4
4
|
"description": "OpenCode plugin with a hook layer (tool.before.*, session.idle...), agents (code-reviewer, doc-writer), and commands (/review-pr, /commit)",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: code-release
|
|
3
3
|
description: >
|
|
4
|
-
Prepare and execute a release with version bumping, changelog updates,
|
|
4
|
+
Prepare and execute a release with version bumping, changelog updates, and tags.
|
|
5
|
+
use_when: >
|
|
6
|
+
REQUIRED: When the user asks to prepare or perform a release,
|
|
7
|
+
call skill({ name: "code-release" }) before changing any release artifacts.
|
|
5
8
|
---
|
|
6
9
|
|
|
7
10
|
# Code Release Skill
|
|
@@ -13,7 +16,6 @@ Any destructive or remote action requires confirmation, including:
|
|
|
13
16
|
- `git commit`
|
|
14
17
|
- `git tag`
|
|
15
18
|
- `git push`
|
|
16
|
-
- `gh release create`
|
|
17
19
|
|
|
18
20
|
## Step 1: Determine last released version
|
|
19
21
|
|
|
@@ -42,10 +44,9 @@ Present the recommendation and ask the user to confirm before changing any files
|
|
|
42
44
|
- Commit release changes with a clear release message.
|
|
43
45
|
- Create an annotated tag (for example, `vX.Y.Z`).
|
|
44
46
|
- Push commits, then push tags.
|
|
45
|
-
- Create a GitHub release using `gh release create` with the changelog section as the body.
|
|
46
47
|
|
|
47
48
|
## Output format
|
|
48
49
|
|
|
49
50
|
- Summary of the last version, commit range, and recommended bump.
|
|
50
51
|
- Explicit confirmation request before making changes.
|
|
51
|
-
- After completion, list commands run
|
|
52
|
+
- After completion, list commands run.
|