siliconpeasant/soc_agent_skill/soc-integrate
Claude Code and agent skill by siliconpeasant/soc_agent_skill
- community
Checking that the SKILL.md file is still in the repository.
Extract RTL ports, generate instances/wrappers/top modules, and track interface changes through snapshots and integration configs. Use for generated SoC top-level integration and port-change maintenance. soc_update only after listed submodule ports change; do not regenerate a top just to close a delivery stage.
Install
npx vskill@latest install siliconpeasant/soc_agent_skill/soc-integrateSKILL.md
SoC Integrate (soc-integrate)
Generate and maintain a chip/subsystem top from Verilog submodule files. Do not hand-edit generated instances. Keep connection intent in a port-map JSON.
Prefer the bundled MCP server. CLI is available for local use and tests.
MCP tools
| Tool | Purpose | |
|---|---|---|
soc_extract | Parse ANSI module ports | |
soc_instantiate | Emit .port(signal) instance | |
soc_wrap | Pass-through wrapper | |
soc_csv | Port CSV | |
soc_snapshot / soc_diff | Port snapshot and delta | |
soc_integrate | Stitch modules into a generated top + .integrate.json | |
soc_extract_map | Recover mappings from an existing top | |
soc_update | Refresh that top after listed submodule ports change | |
soc_remove | Drop a module from the config and refresh |
Register stdio:
Requires pip install mcp.
When to soc_update
soc_update refreshes an already generated top after a module named in .integrate.json adds, removes, renames, or resizes a port.
Do not run it when submodule ports are unchanged. Snapshot/CSV evidence is enough. Regenerating just to close a stage rewrites the top with no intent change.
The generated-top owner runs soc_update. Leaf IP workspaces do not update the chip top.
If a close skips soc_update, say why: ports unchanged, or name the deferred port delta. Bare soc_update not run is ambiguous.
Connection rules
Same-name ports, direction-compatible:
- all
input/inout→ top input - one
outputplusinputs → internal wire output+outputor mixed mismatch → unique ports (prefixed unless mapped)
Automatic sharing is only for simple cases. Review multi-driver, width, clock-domain, reset-domain, and protocol connections explicitly. Put those intents in --map / port-map JSON:
Parser accepts ANSI Verilog/SystemVerilog ports and fails closed on non-ANSI lists and package-typed ports (pkg::word_t). Wrap those modules first.
Internal nets that are not ports (gated clocks, synced resets, hierarchical IRQ taps) cannot be stitched by this skill. Export them from a glue module, then integrate the glue.
Reset ownership
CRG owns clock trees and combinational reset-source combine. Integration owns one rst_synchronizer (STAGES=2) per domain on the gated domain clock (rst_<dom>_sync_ni). Do not put sync-release flops inside generated CRG or each leaf IP.
CLI
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingsoc-integrate/SKILL.md
Popularity
- Repository stars
- 55
- Repository forks
- 26
- 7-day trend score
- 0
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/siliconpeasant/soc_agent_skill/soc-integrate)