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-review, code-simplify), and tools (gitingest, blockchain queries, agent-promote).
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-review
120
+ ### code-release
118
121
 
119
- Read-only code review skill that analyzes diffs for real problems.
122
+ Prepare releases with version bumps, changelog updates, and tags.
120
123
 
121
- - **Purpose**: Provide actionable feedback on code changes without modifying files
122
- - **Activation**: On user request, or before committing/merging changes
123
- - **Focus areas**:
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
- name: code-review
3
- description: >
4
- Review code changes for quality, correctness, and security. Load after receiving
5
- a diff or before merging changes.
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 Skill
18
+ # Code Review Agent
9
19
 
10
- ## CRITICAL CONSTRAINT
11
20
 
12
- **This is a READ-ONLY review.** You MUST NOT:
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
- Your role is strictly analytical. Provide feedback only.
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
- ### Critical focus areas
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
- ### Simplification focus
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
- ### Operational rules
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
- ## Step 3: Output format
58
+ ## Output Format
95
59
 
96
- ### Issues
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
- Include this section only if there are meaningful refactors that are clearly behavior-preserving. Each candidate MUST include:
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.
@@ -0,0 +1,10 @@
1
+ ---
2
+ description: Review changes from source branch into target branch
3
+ agent: code-reviewer
4
+ ---
5
+
6
+ # Review: $1 → $2
7
+
8
+ /diff-summary $1 $2
9
+
10
+ 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.0",
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, tags, and GitHub release creation.
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 and the release URL.
52
+ - After completion, list commands run.