synvek/synbot/code-dev
Claude Code and agent skill by synvek/synbot
- community
Checking that the SKILL.md file is still in the repository.
Guide the agent through code development workflow: analyze project, collect context, plan changes, execute modifications, and verify results. Use when users request code changes, new features, refactoring, or bug fixes.
Install
npx vskill@latest install synvek/synbot/code-devSKILL.md
Code Development Skill
This skill defines the complete code development workflow for the agent. Follow these steps in order when handling any code development task.
Workflow Overview
- Analyze Task — Understand the request and scan the project
- Collect Context — Gather relevant code and dependencies
- Plan Changes — Create a modification plan and present it to the user
- Execute Modifications — Apply code changes in dependency order
- Verify Results — Build, test, and auto-fix if needed
Step 1: Analyze Task
Before writing any code, understand the project and the user's intent.
- Parse the user's request to identify what needs to change (new feature, bug fix, refactor, etc.)
- Call
analyze_codewithaction: scan_projectto get the project structure, type, and top-level symbols - Read project coding standards files if they exist:
.editorconfig— indentation, charset, line endingsrustfmt.toml/.rustfmt.toml— Rust formatting rules.prettierrc/.prettierrc.json— JavaScript/TypeScript formatting.clang-format— C/C++ formattingpyproject.toml[tool.black]/[tool.ruff]section — Python formatting.eslintrc/eslint.config.js— JavaScript/TypeScript linting rules
- Note the project type (Rust/Cargo, Node/npm, Python/pip, etc.) and its build system
All generated code must conform to the discovered coding standards.
Step 2: Collect Context
Gather the code context needed to make accurate modifications.
- Call
analyze_codewithaction: search_contextusing keywords from the user's request - Review the returned code snippets and referenced symbols
- Identify:
- Files that need to be created or modified
- Import/dependency relationships between those files
- Module registration files that may need updating (e.g.,
mod.rs,index.ts,__init__.py)
- If the context is insufficient, call
search_contextagain with refined queries - Use
read_fileto load full contents of files you plan to modify
Step 3: Plan Changes
Present a clear plan before making any modifications.
Before writing any code, show the user:
- A list of files to be created or modified, for example:
``` Files to modify:
- src/tools/mod.rs (add module declaration)
- src/tools/new_tool.rs (create: new tool implementation)
- src/cli/helpers.rs (register new tool)
```
- A brief summary of what changes each file will receive
- The dependency order in which files will be modified
Wait for the user to confirm or adjust the plan before proceeding. If the user indicates urgency or says to go ahead, proceed without waiting.
Step 4: Execute Modifications
Apply changes following these rules:
Dependency Order
Execute multi-file modifications in dependency order to minimize intermediate compilation errors:
- Data models and types — structs, enums, interfaces, type definitions
- Core implementations — functions, methods, trait implementations
- Module registration —
mod.rs,index.ts,__init__.py,lib.rs - Integration points — wiring, configuration, initialization code
- Tests — test files and test utilities
Import/Use Declarations
When generating or modifying code, always include the necessary import/use declarations:
- For Rust: add
usestatements at the top of the file, grouped by crate (std, external, local) - For TypeScript/JavaScript: add
importstatements - For Python: add
import/from ... importstatements - Check existing imports in the file to avoid duplicates
Module Registration
When adding new modules, update the relevant registration files:
- Rust: Add
pub mod new_module;tomod.rsorlib.rs - TypeScript: Add
exporttoindex.tsbarrel files - Python: Update
__init__.pywith imports
Applying Changes
- Use
write_filefor new files - Use
edit_filefor modifying existing files (precise text replacement) - Batch edits: When a single file needs multiple edits, use the
editsarray parameter to apply them all in one call:
``json { "path": "src/main.rs", "edits": [ { "old_text": "old_code_1", "new_text": "new_code_1" }, { "old_text": "old_code_2", "new_text": "new_code_2" } ] } ` This is preferred over multiple separate edit_file` calls to the same file — it reduces tool call count and is atomic (all-or-nothing).
- After each file modification, call
show_diffwith the original content to display the unified diff to the user
Sensitive File Protection
Before modifying any of these file types, always request explicit user confirmation:
.env,.env.*— environment variables, may contain secrets*.key,*.pem,*.cert— cryptographic key files*credentials*,*secret*— files with sensitive naming- Config files that commonly hold secrets:
config.toml,settings.json,application.yml(when they contain password/token/key fields)
Prompt the user with something like:
"This file may contain sensitive data. Confirm modification of.env.production? (y/n)"
Step 5: Verify Results
After all modifications are complete, verify correctness.
Build Verification
- Detect the appropriate build command from the project type:
- Rust:
cargo check(fast) orcargo build - Node:
npm run buildornpx tsc --noEmit - Python:
python -m py_compile <file>or project-specific lint - Go:
go build ./...
- Execute the build command using
exec - Report the result to the user
Auto-Fix on Build Failure
If the build fails, attempt automatic repair:
- Attempt 1: Analyze the error output, identify the failing file and line, apply a fix, rebuild
- Attempt 2: If still failing, re-read the file context, try an alternative fix approach, rebuild
- Attempt 3: Final attempt with a different strategy, rebuild
After 3 failed attempts, stop and report to the user:
- The exact error messages
- What fixes were attempted
- Suggested next steps for manual resolution
Do not retry beyond 3 attempts to avoid infinite loops.
Test Verification
If the project has a test suite, run relevant tests after a successful build:
- Rust:
cargo test - Node:
npm testornpx jest - Python:
pytest - Go:
go test ./...
Report test results. If tests fail, apply the same auto-fix loop (max 3 retries) for test failures.
Quick Reference: Tool Usage
| Step | Tool | Action | |
|---|---|---|---|
| Analyze | analyze_code | scan_project — project structure and symbols | |
| Context | analyze_code | search_context — find relevant code | |
| Read | read_file | Load full file contents | |
| Create | write_file | Create new files | |
| Modify | edit_file | Precise text replacement in existing files | |
| Diff | show_diff | Display unified diff after modifications | |
| Build/Test | exec | Run build and test commands |
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingtemplates/skills/code-dev/SKILL.md
Popularity
- Repository stars
- 81
- Repository forks
- 10
- 7-day trend score
- 22
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/synvek/synbot/code-dev)