Best for
- Implementing features
- Fixing bugs
- Refactoring code
event4u-app/agent-config/src/skills/developer-like-execution/SKILL.md
Use when implementing, debugging, refactoring, or reviewing code — enforces the think → analyze → verify → execute workflow — even when the user just says 'implement X' without naming it.
Decision brief
Use when implementing, debugging, refactoring, or reviewing code — enforces the think → analyze → verify → execute workflow — even when the user just says 'implement X' without naming it.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/developer-like-execution"Inspect the Agent Skill "developer-like-execution" from https://github.com/event4u-app/agent-config/blob/0adf49a8ae84b0ff6e2de8759eea43257e020eff/src/skills/developer-like-execution/SKILL.md at commit 0adf49a8ae84b0ff6e2de8759eea43257e020eff. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Review the “Verification tool mapping” section in the pinned source before continuing.
If Xdebug is available (as MCP or IDE integration):
When UI changes are involved:
If important information is missing:
When UI is affected, verify with Playwright (MCP or direct):
Permission review
The documentation asks the agent to run terminal commands or scripts.
| **CLI commands/jobs** | Run command, check exit code | — |The documentation includes network, browsing, or remote request actions.
curl -s http://localhost:3000/__routes | jq '.[] | select(.path == "/api/users")' # Express custom-introspectionThe documentation includes network, browsing, or remote request actions.
curl -s http://localhost:8000/openapi.json | jq '.paths["/api/users"]' # FastAPIThe documentation asks the agent to run terminal commands or scripts.
docker compose logs api --since 5m --no-color | rg "payment|timeout" # any container stackEvidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 91/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 7 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Do NOT use when only explaining concepts or writing pure reference documentation without execution.
Act like a real developer: think before acting, analyze before coding, verify before concluding. Avoid unnecessary trial-and-error. Minimize output, token usage, and irrelevant data. Develop against expected behavior, ideally test-first.
Use the smallest, most targeted tool that gives the needed evidence. If a tool is available as MCP server, prefer it over manual alternatives.
| What changed | Primary tool | MCP alternative |
|---|---|---|
| Backend/API endpoint | curl -s | jq | Postman MCP (if configured) |
| Frontend/UI | Manual browser check | Playwright MCP (navigate + snapshot) |
| Execution flow/debugging | Print statements, logs | Xdebug MCP (breakpoints, variable inspection) |
| CLI commands/jobs | Run command, check exit code | — |
| Database | SQL query, migration status | — |
| External APIs | Http::fake() in tests | Postman MCP for manual checks |
If Xdebug is available (as MCP or IDE integration):
Use Xdebug before adding print statements or debug logging. It's faster and leaves no cleanup work.
When UI changes are involved:
jq for JSON: curl -s /api/users | jq '.[0] | {id, email}' — never the full responserg, grep for text: specific patterns, not full fileshead, tail, cut, sort, uniq for narrowing results--filter, --json, --format flags on CLI tools — always use themphp artisan route:list --json | jq '…', Rails bin/rails routes | grep users, Express console.log(app._router.stack), FastAPI app.routes, Symfony bin/console debug:router.rg "request_id=abc123" <log-dir> — never cat <log-file>. Log dirs by stack: Laravel storage/logs/, Rails log/, Node ./logs/ or journalctl, Python ./logs/ or journalctl, Docker docker compose logs <svc> --since 5m.Do NOT:
Before acting, verify:
If important information is missing:
memory-access, call
retrieve(types=["domain-invariants"], keys=<touched paths>, limit=3).
A matching domain-invariant is a hard constraint — violating it = regression,
surface the conflict to the user before proceeding. For architectural rationale
(why the current shape exists), check the ADR index
docs/decisions/INDEX.md; plan around it, do
not silently overturn it. Cite matching ids / ADR numbers in the plan.
See engineering-memory-data-format
for the schema.Prefer test-driven or test-first development whenever practical.
Before changing code, define:
Prefer: write or update failing test first → implement against it → run tests again.
If full TDD is not practical: at least write down the expected output before coding.
# Route lookup — pick the project's framework
php artisan route:list --json | jq '.[] | select(.uri == "api/users") | {method, uri, name, action, middleware}' # Laravel
bin/console debug:router --format=json | jq '.[] | select(.path == "/api/users")' # Symfony
bin/rails routes -g users # Rails
curl -s http://localhost:3000/__routes | jq '.[] | select(.path == "/api/users")' # Express custom-introspection
curl -s http://localhost:8000/openapi.json | jq '.paths["/api/users"]' # FastAPI
# Config inspection
php artisan config:show app | grep env # Laravel
bin/console debug:config framework # Symfony
bin/rails runner 'puts Rails.application.config_for(:database)' # Rails
# API inspection — extract only what you need
curl -s http://localhost/api/users | jq '.[0] | {id, email, status}'
curl -s http://localhost/api/users/1 | jq '{id, name, roles: [.roles[].name]}'
# Recent logs — targeted, not full dump
tail -n 200 storage/logs/laravel.log | rg "payment|timeout" # Laravel
tail -n 200 log/development.log | rg "payment|timeout" # Rails
docker compose logs api --since 5m --no-color | rg "payment|timeout" # any container stack
journalctl -u myapp --since "5 min ago" | rg "payment|timeout" # systemd
# DB-state probe — targeted single record, not full table
php artisan tinker --execute="User::where('email','x@y')->first(['id','email','status'])" # Laravel
bin/rails runner "p User.where(email: 'x@y').first&.slice(:id,:email,:status)" # Rails
bin/console doctrine:query:sql "SELECT id,email,status FROM users WHERE email='x@y' LIMIT 1" # Symfony
psql -d mydb -c "SELECT id,email,status FROM users WHERE email='x@y' LIMIT 1" # raw SQL fallback
When available (MCP or IDE), prefer over print/log debugging:
1. Set breakpoint at suspected method
2. Trigger request: curl -s http://localhost/api/endpoint
3. Inspect variables at breakpoint
4. Step through execution to verify actual flow
5. Remove breakpoint when done — zero cleanup
When UI is affected, verify with Playwright (MCP or direct):
Use rg over broad grep, jq for JSON, cut/awk/sort/uniq to reduce noise.
Never load full output into context when a filter gives you the answer.
Tests are mandatory when behavior changes or bugs are fixed.
Prefer: failing test first → implementation → passing test.
Test types: unit (isolated logic), feature/integration (behavior), UI (frontend), regression (bugs).
If a test cannot be added: state exactly why and explain what verification replaces it.
Never trust "it should work" — execute and observe.
| What | How | MCP alternative |
|---|---|---|
| Backend/API | curl -s | jq, test endpoint | Postman MCP |
| Frontend/UI | Browser check | Playwright MCP (navigate + snapshot) |
| Execution flow | Logs, print debug | Xdebug MCP (breakpoints, step-through) |
| CLI/Jobs | Run command, check exit code | — |
| Database | Query result, migration status | — |
| Skills/rules | Lint, structure check | — |
If a debugging/testing tool is available as MCP server — prefer it over manual alternatives.
Alternatives
event4u-app/agent-config
Use when the user says "review the design", "check the UI", or wants a comprehensive UI/UX review. Uses a 7-phase methodology covering interaction, responsiveness, accessibility, and more.
K-Dense-AI/scientific-agent-skills
Build, inspect, test, and analyze bounded process-based discrete-event simulations with SimPy, including events, resources, interrupts, monitoring, replications, warm-up, and reproducible output analysis.
K-Dense-AI/scientific-agent-skills
Guided statistical analysis for research data - test selection, assumption checking, effect sizes, power analysis, Bayesian alternatives, and APA-formatted reporting. Use whenever a user wants to compare groups, test a hypothesis, analyze experimental or survey data, check statistical assumptions, compute required sample sizes, or write up results - even if they never name a specific test. Covers t-tests, ANOVA, chi-square, correlation, regression, non-parametric and Bayesian methods. For low-le
CherryHQ/cherry-studio
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.