Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Detect available development tools at session start. Saves to .agent/tools.json and warns about missing required tools. Works with or without aoc CLI installed.
.claude/skills/majiayu000-agent-ops-tools/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-05 | ✗→✓ | ▲ Improved | 178% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 301% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 60% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 119% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 110% | 0% |
Discover available development tools and save to .agent/tools.json for use by other skills.
Works with or without aoc CLI installed. If aoc is not available, use the pure skill procedure below.
This skill wraps the aoc tools CLI commands:
| Command | Purpose | |---------|---------| | aoc tools scan | Detect all available tools | | aoc tools show <tool> | Show details for specific tool | | aoc tools export | Export to JSON file |
The skill runs automatically during:
/tools-detect
/tools-check <tool-name>
/tools-require <tool-list>bash# Run tool detection aoc tools scan --json > .agent/tools.json
🔧 Tool Detection Results
| Category | Tool | Version | Status |
|----------|------|---------|--------|
| Version Control | git | 2.43.0 | ✅ Available |
| Version Control | gh | 2.40.0 | ✅ Available |
| Node.js | node | 20.10.0 | ✅ Available |
| Node.js | npm | 10.2.3 | ✅ Available |
| Node.js | pnpm | ❌ | Not found |
| Python | python | 3.12.0 | ✅ Available |
| Python | uv | 0.4.0 | ✅ Available |
| Python | pip | 23.3.1 | ✅ Available |
| Container | docker | 24.0.7 | ✅ Available |
| Container | kubectl | ❌ | Not found |
Detected: 8/14 common toolsIf the project has requirements (from constitution or package files):
⚠️ Missing Required Tools
Based on project configuration:
- `pyproject.toml` requires: python, uv
- `package.json` requires: node, npm
- `Dockerfile` requires: docker
Missing:
- ❌ kubectl (referenced in k8s/ manifests)
Action: Install missing tools or remove references.json{ "tools": [ { "name": "Git", "command": "git", "available": true, "category": "vcs", "version": "2.43.0", "path": "C:\\Program Files\\Git\\cmd\\git.exe" }, { "name": "Node.js", "command": "node", "available": true, "category": "javascript", "version": "20.10.0", "path": "C:\\Program Files\\nodejs\\node.exe" }, { "name": "Python", "command": "python", "available": true, "category": "python", "version": "3.12.0", "path": "C:\\Users\\...\\python.exe" }, { "name": "Docker", "command": "docker", "available": true, "category": "containers", "version": "24.0.7", "path": "C:\\Program Files\\Docker\\Docker\\resources\\bin\\docker.exe" }, { "name": "kubectl", "command": "kubectl", "available": false, "category": "containers" }, { "name": "aoc", "command": "aoc", "available": true, "category": "agentops", "version": "0.1.24", "path": "C:\\Users\\...\\aoc.exe" } ], "summary": { "total": 46, "available": 18, "categories": { "agentops": 1, "vcs": 1, "python": 7, "javascript": 3, "dotnet": 1, "containers": 2, "editors": 1, "utilities": 1 } } }
json{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://agentops.dev/schemas/tools.json", "title": "AgentOps Tools Manifest", "type": "object", "properties": { "tools": { "type": "array", "description": "List of detected tools", "items": { "type": "object", "properties": { "name": { "type": "string", "description": "Display name of the tool" }, "command": { "type": "string", "description": "CLI command name" }, "available": { "type": "boolean", "description": "Whether tool is installed and accessible" }, "category": { "type": "string", "description": "Tool category (vcs, python, javascript, etc.)" }, "version": { "type": ["string", "null"], "description": "Detected version (null if unavailable)" }, "path": { "type": ["string", "null"], "description": "Full path to executable (null if unavailable)" } }, "required": ["name", "command", "available", "category"] } }, "summary": { "type": "object", "description": "Summary statistics", "properties": { "total": { "type": "integer", "description": "Total tools checked" }, "available": { "type": "integer", "description": "Number of available tools" }, "categories": { "type": "object", "description": "Count of available tools per category", "additionalProperties": { "type": "integer" } } }, "required": ["total", "available", "categories"] } }, "required": ["tools", "summary"] }
| Category | Description | Example Tools | |----------|-------------|---------------| | agentops | AgentOps CLI tools | aoc | | vcs | Version control | git, gh, glab | | python | Python ecosystem | python, pip, uv, ruff, mypy, pytest | | javascript | Node.js ecosystem | node, npm, pnpm, yarn, bun, deno | | dotnet | .NET ecosystem | dotnet, nuget | | rust | Rust toolchain | rustc, cargo | | go | Go toolchain | go | | java | Java ecosystem | java, mvn, gradle | | containers | Container tools | docker, podman, kubectl, helm | | cloud | Cloud CLIs | aws, az, gcloud | | editors | Editor CLIs | code, nvim, vim | | build | Build tools | make, cmake, ninja | | utilities | General utilities | jq, curl, wget, rg, fd, fzf |
The skill detects these common development tools:
git — Git version controlgh — GitHub CLInode — Node.js runtimenpm — Node package managerpnpm — Fast package manageryarn — Yarn package managerbun — Bun runtimepython — Python interpreterpip — Python package installeruv — Fast Python package managerpoetry — Python dependency managementpipenv — Python dev workflowdotnet — .NET SDKdocker — Container runtimekubectl — Kubernetes CLIhelm — Kubernetes package managerterraform — Infrastructure as codego — Go compilercargo / rustc — Rust toolchainjava / mvn / gradle — Java ecosystemWhen aoc is not installed, the agent can perform tool detection directly using shell commands.
PowerShell (Windows):
powershell# Version Control git --version 2>$null | Select-Object -First 1 gh --version 2>$null | Select-Object -First 1 # Node.js Ecosystem node --version 2>$null npm --version 2>$null pnpm --version 2>$null yarn --version 2>$null bun --version 2>$null # Python Ecosystem python --version 2>$null pip --version 2>$null uv --version 2>$null poetry --version 2>$null # .NET Ecosystem dotnet --version 2>$null # Container/Cloud docker --version 2>$null kubectl version --client --short 2>$null helm version --short 2>$null terraform --version 2>$null | Select-Object -First 1 # Other Languages go version 2>$null cargo --version 2>$null rustc --version 2>$null java --version 2>$null | Select-Object -First 1 mvn --version 2>$null | Select-Object -First 1 gradle --version 2>$null | Select-Object -First 1
Bash (Linux/macOS):
bash# Version Control git --version 2>/dev/null | head -1 gh --version 2>/dev/null | head -1 # Node.js Ecosystem node --version 2>/dev/null npm --version 2>/dev/null pnpm --version 2>/dev/null yarn --version 2>/dev/null bun --version 2>/dev/null # Python Ecosystem python --version 2>/dev/null || python3 --version 2>/dev/null pip --version 2>/dev/null || pip3 --version 2>/dev/null uv --version 2>/dev/null poetry --version 2>/dev/null # .NET Ecosystem dotnet --version 2>/dev/null # Container/Cloud docker --version 2>/dev/null kubectl version --client --short 2>/dev/null helm version --short 2>/dev/null terraform --version 2>/dev/null | head -1 # Other Languages go version 2>/dev/null cargo --version 2>/dev/null rustc --version 2>/dev/null java --version 2>/dev/null | head -1 mvn --version 2>/dev/null | head -1 gradle --version 2>/dev/null | head -1
After running the detection commands, parse the output and create .agent/tools.json:
json{ "tools": [ { "name": "Git", "command": "git", "available": true, "category": "vcs", "version": "2.43.0", "path": null }, { "name": "Node.js", "command": "node", "available": true, "category": "javascript", "version": "20.10.0", "path": null }, { "name": "uv", "command": "uv", "available": false, "category": "python" } ], "summary": { "total": 20, "available": 8, "categories": { "vcs": 1, "javascript": 1, "python": 0 } } }
Present the detection results in the standard format (see "Display Summary" above).
aoc, paths are not resolved (set to null)git version 2.43.0 → 2.43.0)available: falseWhen creating constitution, auto-populate commands:
markdown## Commands ### Build - DETECTED: `uv run python scripts/build.py` (uv available) - FALLBACK: `pip install -e . && python -m build` (pip available) ### Lint - DETECTED: `uv run ruff check .` (ruff available via uv)
Before capturing baseline, verify tools:
⚠️ Baseline Pre-check
Required tools for build commands:
- ✅ uv (required by: build, lint, test)
- ✅ python (required by: scripts)
- ❌ mypy (required by: lint) — install with: uv pip install mypy
Fix missing tools before capturing baseline.Check for Docker-related tools:
🔧 Docker Tools Available:
- ✅ docker (24.0.7)
- ✅ docker-compose (2.23.0)
- ❌ hadolint — enhanced linting unavailable
- ❌ trivy — vulnerability scanning unavailable
- ❌ dive — layer analysis unavailable
Running with: docker only (basic features)Projects can define required tools in .agent/requirements.json:
json{ "required": ["git", "python", "uv"], "optional": ["docker", "kubectl"], "build_tools": { "python": ">=3.10", "uv": ">=0.1.0" } }
Or infer from project files:
pyproject.toml → python, uv/pippackage.json → node, npm/yarn/pnpmDockerfile → docker*.csproj → dotnetgo.mod → goCargo.toml → cargo/rustc.agent/tools.json/tools-detect --forcegit --version)Other measured skills in the registry, with their headline benchmark lift.