core-engineering
Skill0 starsChanged 4 months agoMITView on GitHub
General implementation only when no narrower task or ecosystem skill fits.
We split this skill into the rules it gives an agent
30 rules. 0 are common, 26 are distinctive, and 4 are very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
26
Distinctive
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 15
Prefer the smallest correct change.
- Distinctive: line 18
Do not introduce unrelated refactors.
- Distinctive: line 19
Do not invent files, APIs, schemas, commands, or test results.
- Distinctive: line 20
Do not use placeholders as implementation.
- Distinctive: line 21
Do not leave dead code.
- Distinctive: line 22
Do not hide uncertainty.
- Distinctive: line 36
If ambiguity blocks correctness, ask one precise question.
- Distinctive: line 38
If ambiguity is manageable, proceed with an explicit assumption.
- Distinctive: line 42
Before writing code, inspect:
- Distinctive: line 53
Create a concise plan:
- Distinctive: line 72
no hidden global state;
- Distinctive: line 73
no unrelated formatting churn.
- Distinctive: line 74
no new dependencies unless justified.
- Distinctive: line 78
Use the strongest relevant local tool when it is available:
- Distinctive: line 88
If the preferred tool is unavailable, use the best fallback and name the gap only when it materially affects confidence or reproducibility.
- Distinctive: line 93
Use the same question-based routing as the steady global prompt, when the current host exposes the relevant capability:
- Distinctive: line 106
Do not run every search tool for each task.
- Distinctive: line 113
Before broad reads or repeated cross-file exploration, do a cheap state check:
- Distinctive: line 120
Use the result as a decision gate:
- Very specific: line 129
read-only, security, validation-critical, or "do not modify files" task -> ask before creating .serena/, graphify-out/, context packs, …
- Distinctive: line 141
After edits, refresh the affected index scope and confirm one changed symbol or document is found.
- Distinctive: line 146
Do not run persistent hook/config upgrades such as Graphify hooks or Git hooks without an explicit user request.
- Distinctive: line 161
Before enabling an automatic wrapper, run an intentionally failing test and verify its raw exit code and failure remain visible.
- Very specific: line 169
Do not run context-mode upgrade for small, localized, read-only, security, or validation-critical tasks.
- Very specific: line 174
Run context-mode upgrade only after explicit user authorization to modify persistent Codex hooks/config.
- Very specific: line 179
After enabling hooks, run context-mode doctor and report modified global files such as ~/.codex/config.toml, ~/.codex/hooks.json, and any …
- Distinctive: line 184
Run the best available targeted validation.
- Distinctive: line 186
If validation fails, report the failure honestly and fix root causes when in scope.
- Distinctive: line 188
If validation cannot be run, explain exactly why.
- Distinctive: line 216
no fake placeholders remain.
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Skill: core-engineering
Purpose
Apply the default engineering workflow for production-grade implementation work.
Core Rules
- Verify before acting.
- Prefer the smallest correct change.
- Preserve public contracts unless explicitly asked to change them.
- Match existing project style.
- Do not introduce unrelated refactors.
- Do not invent files, APIs, schemas, commands, or test results.
- Do not use placeholders as implementation.
- Do not leave dead code.
- Do not hide uncertainty.
Workflow
1. Understand
Identify:
- requested behavior;
- expected output;
- constraints;
- ambiguous points;
- relevant domain boundaries.
If ambiguity blocks correctness, ask one precise question.
If ambiguity is manageable, proceed with an explicit assumption.
2. Inspect
Before writing code, inspect:
- relevant files;
- nearby related code;
- project config;
- tests;
- existing patterns;
- validation commands.
3. Plan
Create a concise plan:
- target files;
- intended changes;
- expected behavior;
- validation method;
- risks/assumptions.
For small tasks, one short paragraph is enough. The plan is a tool, not a paperwork shrine.
4. Implement
Implement in small focused slices.
Rules:
- one concern per change;
- explicit control flow;
- explicit error handling;
- no hidden global state;
- no unrelated formatting churn;
- no new dependencies unless justified.
Tooling Defaults
Use the strongest relevant local tool when it is available:
rgandrg --filesbefore slower text or file search;fdfor file discovery when it improves the search;ast-greportree-sitterfor syntax-aware search and safe mechanical rewrites;jqoryqfor structured JSON/YAML inspection and transformation;justwhen ajustfileowns project commands;deltafor local diff review when useful;fzfonly for interactive narrowing, not as a required automation dependency.
If the preferred tool is unavailable, use the best fallback and name the gap only when it materially affects confidence or reproducibility.
Context Tooling Tiers
Use the same question-based routing as the steady global prompt, when the current host exposes the relevant capability:
| Need | First route |
| Local edit or literal | rg, path filters, and targeted reads |
| Definitions and references | Serena's LSP-backed symbol navigation |
| Architecture and impact | Graphify, with fresh source verification |
| Documentation and ADRs | QMD over allowed roots; wiki-query for read-only wiki questions |
| External library documentation | Context7 for the installed library version |
| Dependency source | opensrc for the exact dependency revision |
| Worker handoff | context-pack; Repomix when an export is useful |
Do not run every search tool for each task. Keep path filters and bounded excerpts. A package installation does not prove host availability. If a route is unavailable, use targeted local evidence and report the material gap. Repomix is an export, not a live code index.
Project Context Bootstrap
Before broad reads or repeated cross-file exploration, do a cheap state check:
- Serena:
.serena/project.ymlplus any exposed Serena MCP/symbol tools; - Graphify:
graphify-out/graph.json; - Repomix/context pack: existing requested pack path;
- output compressors: command availability and raw-output location.
Use the result as a decision gate:
- localized task -> use
rg, symbol lookup, and targeted reads; - existing Serena, Graphify, or QMD state -> compare its source revision and file hashes with the required scope, including uncommitted changes, before trusting it; an index older than an edit is stale evidence;
- missing state but architecture-heavy, symbol-heavy, dependency/call-graph, or repeated onboarding task -> initialize the narrowest useful project-local state when file mutation is allowed;
- read-only, security, validation-critical, or "do not modify files" task ->
ask before creating
.serena/,graphify-out/, context packs, hooks, or other repo-local artifacts.
Serena may be initialized with serena project index . when the CLI is
available and LSP-backed navigation will materially reduce file reads. Report
new .serena/ files and never stage or commit them unless asked.
Graphify belongs to architecture/dependency/call-graph work. If no graph
exists, build a scoped graph only when it will reduce repeated reading; report
graphify-out/ as generated state and verify important claims against source.
After edits, refresh the affected index scope and confirm one changed symbol or document is found. If freshness cannot be established, read current source and mark the index unverified. QMD roots must be an explicit allowlist; do not add other repositories, personal notes, or home directories automatically.
Do not run persistent hook/config upgrades such as Graphify hooks or Git hooks without an explicit user request.
Output Compression Guardrail
Select one transformation: jq or deterministic filters for structured data,
RTK for supported noisy CLI output, Context Mode for large results with
selective retrieval, or Distill for semantic grouping. Do not chain multiple
summarizers by default. Distill is not sole evidence of a successful test.
Capture stdout/stderr and the original command's exit code before any filter or summarizer. Store raw artifacts outside tracked files. Record command, working directory, source revision, and raw artifact path separately from the summary. A nonzero test exit remains FAIL even when a filter exits zero; preserve scanner errors separately from findings and SKIP separately from PASS. Before enabling an automatic wrapper, run an intentionally failing test and verify its raw exit code and failure remain visible. Read raw evidence before claiming validation or explaining ambiguous failures.
Context Mode hook enablement is a separate decision from using output
compression. context-mode doctor may diagnose missing hooks, but that result
does not authorize installing them.
Do not run context-mode upgrade for small, localized, read-only, security, or
validation-critical tasks. Propose it only when the work is multi-session,
repeated, or likely to produce large/noisy outputs where automatic capture will
materially reduce context loss.
Run context-mode upgrade only after explicit user authorization to modify
persistent Codex hooks/config. If the user asks to "reduce context/log noise
automatically", summarize that this requires persistent hook/config changes and
ask for confirmation before running it.
After enabling hooks, run context-mode doctor and report modified global files
such as ~/.codex/config.toml, ~/.codex/hooks.json, and any backups.
5. Validate
Run the best available targeted validation.
If validation fails, report the failure honestly and fix root causes when in scope.
If validation cannot be run, explain exactly why.
6. Report
Report:
- changed files;
- summary;
- validation command and result;
- assumptions;
- remaining risks.
Assumptions Format
Assumption: <clear assumption>
Reason: <why this assumption is reasonable>
Risk: <what breaks if it is wrong>Definition of Done
The task is done when:
- behavior is implemented;
- architecture is respected;
- tests/validation are handled;
- assumptions and risks are explicit;
- no fake placeholders remain;
- output is understandable to a senior engineer.
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 3
- d-padmanabhan/agent-engineering-handbook★ 17same name
- JustineDevs/premortem★ 2same name
- JustineDevs/Collection★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository62 other files it gives its agents.
- AGENTS.mdAGENTS.md
- accessibility-ui-reviewSkill
- agent-retrospectiveSkill
- agents-md-retrospectiveSkill
- agent-squadSkill
- architecture-mapSkill
- architecture-normalizerSkill
- architecture-principlesSkill
- authz-boundary-reviewSkill
- c-cppSkill
- code-qualitySkill
- code-reviewSkill
- code-to-figmaSkill
- code-wiki-ruSkill
- context-packSkill
- debuggingSkill
- dependency-advisory-auditSkill
- deserialization-parser-reviewSkill
- design-system-extractorSkill
- documentationSkill
- engineering-standardsSkill
- esp32Skill
- esphomeSkill
- external-agent-pack-auditSkill
- fastSkill
- figma-to-codeSkill
- fix-security-findingSkill
- goSkill
- homeassistantSkill
- mcp-tool-routerSkill
- migration-plannerSkill
- mobile-qaSkill
- multi-agent-pr-reviewSkill
- performanceSkill
- playwright-visual-qaSkill
- pythonSkill
- quality-gatesSkill
- refactoringSkill
- responsive-breakpoint-checkSkill
- review-routerSkill
- rustSkill
- secrets-and-config-reviewSkill
- security-diff-reviewSkill
- security-routerSkill
- securitySkill
- session-memorySkill
- specialist-dispatchSkill
- subagent-result-mergeSkill
- supply-chain-reviewSkill
- tdd-guardSkill
- testing-tddSkill
- threat-modelSkill
- typescriptSkill
- ui-buildSkill
- ui-business-appsSkill
- ui-concept-firstSkill
- ui-figmaSkill
- ui-qaSkill
- ui-researchSkill
- ui-routerSkill
- The first 60 shown.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

