Framework Migration Assistant
ArabelaTso/Skills-4-SE
Automatically migrate Python web applications between frameworks (Flask → FastAPI, Django → FastAPI).
Wire dependency injection for a specx Python service with diwire.
$ npx skills add maksimzayats/specx --skill specx-diwire-composition -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install maksimzayats/specx specx-diwire-composition --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/maksimzayats/specx.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/specx-diwire-composition .claude/skills/specx-diwire-composition && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "specx-diwire-composition" agent skill from https://github.com/maksimzayats/specx/tree/main/skills/specx-diwire-composition into .claude/skills/specx-diwire-composition/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "specx-diwire-composition", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/maksimzayats/specx/tree/main/skills/specx-diwire-compositionType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add maksimzayats/specx --skill specx-diwire-composition -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install maksimzayats/specx specx-diwire-composition --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/maksimzayats/specx.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/specx-diwire-composition .agents/skills/specx-diwire-composition && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "specx-diwire-composition" agent skill from https://github.com/maksimzayats/specx/tree/main/skills/specx-diwire-composition into .agents/skills/specx-diwire-composition/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "specx-diwire-composition", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add maksimzayats/specx --skill specx-diwire-composition -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install maksimzayats/specx specx-diwire-composition --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/maksimzayats/specx.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/specx-diwire-composition .cursor/skills/specx-diwire-composition && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "specx-diwire-composition" agent skill from https://github.com/maksimzayats/specx/tree/main/skills/specx-diwire-composition into .cursor/skills/specx-diwire-composition/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "specx-diwire-composition", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/maksimzayats/specx.git --path skills/specx-diwire-composition--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add maksimzayats/specx --skill specx-diwire-composition -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install maksimzayats/specx specx-diwire-composition --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/maksimzayats/specx.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/specx-diwire-composition .gemini/skills/specx-diwire-composition && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "specx-diwire-composition" agent skill from https://github.com/maksimzayats/specx/tree/main/skills/specx-diwire-composition into .gemini/skills/specx-diwire-composition/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "specx-diwire-composition", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install maksimzayats/specx specx-diwire-compositionInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add maksimzayats/specx --skill specx-diwire-composition -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/maksimzayats/specx.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/specx-diwire-composition .github/skills/specx-diwire-composition && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "specx-diwire-composition" agent skill from https://github.com/maksimzayats/specx/tree/main/skills/specx-diwire-composition into .github/skills/specx-diwire-composition/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "specx-diwire-composition", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add maksimzayats/specx --skill specx-diwire-composition -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install maksimzayats/specx specx-diwire-composition --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/maksimzayats/specx.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/specx-diwire-composition .opencode/skills/specx-diwire-composition && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "specx-diwire-composition" agent skill from https://github.com/maksimzayats/specx/tree/main/skills/specx-diwire-composition into .opencode/skills/specx-diwire-composition/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "specx-diwire-composition", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
specx-diwire-compositionWire dependency injection for a specx Python service with diwire.
Specx Diwire Composition is an agent skill from maksimzayats/specx. Wire dependency injection for a specx Python service with diwire. Use when adding ioc/container.py, explicit dependency registrations for capabilities, repositories, gateways, UoW managers, clients, settings, or factories, Injected[...] constructor fields, FastAPI app factory/lifecycle composition, test overrides, or rules that keep containers out of core use cases and services.
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `agents/openai.yaml` and `references/diwire.md`).
It sits in Backend & APIs, covering Design patterns and Backend development. It works with Python and FastAPI. The repository describes itself as: ⚙️ Executable architecture guardrails and agent skills for building structured Python services! The licence is MIT.
Read from SKILL.md and the folder at commit 9362406. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Specx Diwire Composition loads about 1.1k tokens when it runs, and up to ~3.8k if it reads all its reference files. Until then it costs about 103 tokens; SKILL.md has 476 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from maksimzayats/specx at commit 9362406, republished under its MIT licence (© maksimzayats). 476 words, ~1,136 tokens.
.claude/skills/specx-diwire-composition/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Use this skill whenever object graphs, factories, controllers, adapters, or test
overrides need diwire. Read references/diwire.md before writing DI code.
Injected[DependencyType].resolver_context.inject.ioc/, top-level delivery __main__.py/factory/lifecycle modules, and
tests create or use diwire.Container.Container except in FastAPILifecycle, where it is used only
to call container.aclose() during app shutdown.logging.Logger or register loggers in the container. Runtime
logging is configured once by a top-level infrastructure configurator; classes
that log create local stdlib loggers.container.resolve() inside core use cases or services.diwire auto-wire concrete project classes.diwire auto-register BaseRuntimeSettings subclasses as root-scoped
singleton factories. Register a settings instance only for an intentional
test override or an explicitly prebuilt configuration object._register_dependencies(...) inside
ioc/container.py.provides=Container only for the
FastAPI lifecycle shutdown dependency.BaseGateway ports.SQLAlchemyReadinessCheckGateway, for ReadinessCheckGateway when
/readyz needs infrastructure checks.execute(...); they do not
inject repositories, active UoWs, providers, SQLAlchemy sessions, engines,
session factories, or concrete infrastructure adapters directly.container fixture built by the
project's real get_container(). Put project-wide test overrides in that
fixture and register scenario-specific overrides directly in the test before
resolving the target.container fixture.
They must use the real internal graph; do not mock internal use cases,
services, or capabilities.container.resolve(...) for normal synchronous graph construction, even
for targets with async methods; use await container.aresolve(...) only when
DI construction itself has async providers.test_*.py module that uses
them. Reused unit-test doubles may live in mirrored
tests/unit/core/<scope>/{capabilities,gateways,repositories}/fake_<source_module>.py
modules.MagicMock or AsyncMock in the test function when only one behavior
needs to change.harness.py,
tests/_support/fakes, tests/**/_fakes.py, or fake modules outside
those mirrored unit port/capability packages.diwire.integrations.pytest_plugin, and do not use Injected[...]
parameters in test functions.LifespanManager and pass the yielded
manager's state-aware manager.app to the HTTPX2 ASGITransport.Use blank lines as logical separators in all code. Keep related statements together, but separate independent setup, action, assertion, response, branch, and transformation groups so long blocks stay readable.
references/diwire.md - container code, registration examples, controller
composition, and test override patterns.© maksimzayats, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files (references) in skills/specx-diwire-composition of maksimzayats/specx.
Open the folder on GitHubat commit 9362406
Specx Diwire Composition next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Specx Diwire Composition this skillmaksimzayats/specx | 202 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Framework Migration AssistantArabelaTso/Skills-4-SE | 253 | — | ~1.9k | Automated safety check: Pass | Apache-2.0 | |
| Mastering Python SkillSpillwaveSolutions/agent-brain | 119 | — | ~1.4k | Automated safety check: Notes | MIT | |
| Python Backendyonatangross/orchestkit | 292 | — | ~2.8k | Automated safety check: Notes | MIT | |
| Fastapi Backendcohen-liel/hivemind | 110 | — | ~710 | Automated safety check: Pass | Apache-2.0 | |
| Python Fastapi Patternsaiskillstore/marketplace | 433 | 1 repos | ~1.3k | Automated safety check: Notes | None |
ArabelaTso/Skills-4-SE
Automatically migrate Python web applications between frameworks (Flask → FastAPI, Django → FastAPI).
SpillwaveSolutions/agent-brain
Modern Python coaching covering language foundations through advanced production patterns.
yonatangross/orchestkit
Production Python async patterns including asyncio TaskGroup, FastAPI dependency injection and middleware, SQLAlchemy 2.0 async sessions, and database connection pool tuning.
cohen-liel/hivemind
FastAPI best practices for building production Python backends.
aiskillstore/marketplace
FastAPI web framework patterns. An agent skill from aiskillstore/marketplace.
Kilo-Org/kilo-marketplace
FastAPI Python framework. An agent skill from Kilo-Org/kilo-marketplace.
maksimzayats/specx
Add or refactor a specx core scope service. An agent skill from maksimzayats/specx.
maksimzayats/specx
Add or refactor a specx core scope use case. An agent skill from maksimzayats/specx.
maksimzayats/specx
Add delivery controllers for specx services, especially FastAPI HTTP routes.
maksimzayats/specx
Add technical infrastructure adapters for specx core scopes.
maksimzayats/specx
Design or review specx core scope boundaries in Python services.
maksimzayats/specx
Create or reshape a Python FastAPI service repo into the specx clean core/delivery architecture using packaged scoped foundation bases.
Categories
Wire dependency injection for a specx Python service with diwire. Specx Diwire Composition is an agent skill from maksimzayats/specx. Wire dependency injection for a specx Python service with diwire.
Specx Diwire Composition fits situations like: adding ioc/container.py; explicit dependency registrations for capabilities; injected[...] constructor fields; fastAPI app factory/lifecycle composition.
Run `npx skills add maksimzayats/specx --skill specx-diwire-composition -a claude-code`. Or copy the skill folder (skills/specx-diwire-composition in maksimzayats/specx) into .claude/skills/specx-diwire-composition in your project. Claude Code loads it when a task matches its description.
Run `npx skills add maksimzayats/specx --skill specx-diwire-composition -a codex`. Or copy the skill folder (skills/specx-diwire-composition in maksimzayats/specx) into .agents/skills/specx-diwire-composition in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add maksimzayats/specx --skill specx-diwire-composition -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/specx-diwire-composition, .gemini/skills/specx-diwire-composition, .github/skills/specx-diwire-composition and .opencode/skills/specx-diwire-composition in your project.
SKILL.md names no scripts, command-line tools or credentials: Specx Diwire Composition is instructions for the agent only. Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Specx Diwire Composition is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.7k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Specx Diwire Composition: Framework Migration Assistant (ArabelaTso/Skills-4-SE, 253 stars), Mastering Python Skill (SpillwaveSolutions/agent-brain, 119 stars), Python Backend (yonatangross/orchestkit, 292 stars) and Fastapi Backend (cohen-liel/hivemind, 110 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
maksimzayats (a GitHub user) maintains it in maksimzayats/specx, which has 202 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on August 8, 2026.
Source: maksimzayats/specx on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.