Imported from jacoboforero/FPGA_Design_Agent (
AGENTS.md). Install upstream withnpx skills add jacoboforero/FPGA_Design_Agent. Copyright stays with the author.
AGENTS.md
Mission
This repository is a planning-first hardware design pipeline. Preserve the current shape unless a task explicitly requires otherwise:
- spec intake and refinement
- planning and design-context generation
- orchestrated agent and worker execution
- artifact, telemetry, and benchmark reporting
First reads
README.mddocs/README.mddocs/architecture.mddocs/cli.mddocs/reference/codex-agentic-coding.md
Preferred environment
- Preferred local loop:
make build,make up,make deps, thenmake cliormake shell. - Host fallback:
poetry install --with dev, then run repo commands asPYTHONPATH=. poetry run python3 .... - Broker-backed flows usually use
config/runtime.yamlorconfig/runtime.benchmark.yaml. - Prefer
make shellormake cliover ad hoc container shells because they normalizeRABBITMQ_URLfor the Docker network.
Repo map
apps/cli/: primary entrypoints, doctor flow, benchmark commands, validation helpersadapters/: provider, RAG, and observability integrationsagents/: LLM-backed stage workersworkers/: deterministic lint, simulation, acceptance, and distillation stagesorchestrator/: DAG execution, retries, and state transitionscore/runtime/,core/schemas/,core/prompting/,core/tools/: shared contracts and infrastructureprompts/: prompt assets and reusable fragmentsconfig/: runtime manifests and domain configurationdocs/: human runbooks and architecture notestests/: verification suites that mostly mirror production packages
Guardrails
- Keep changes scoped. Prefer targeted fixes over broad refactors.
- Do not change the core execution flow, broker routing shape, task/result contracts, or artifact layout unless the task explicitly requires it.
- Treat
core/schemas/,core/runtime/config.py,core/runtime/paths.py, and orchestrator state transitions as stability boundaries. - Do not edit generated benchmark or run outputs under
artifacts/unless the task is explicitly about fixtures or sample artifacts. - For larger or ambiguous work, follow the plan format in
PLANS.mdbefore making substantial edits.
Validation
- Start with the narrowest relevant
pytesttarget undertests/. pytest tests/adapters -qpytest tests/agents -qpytest tests/apps -qpytest tests/cli -qpytest tests/core -qpytest tests/execution -qpytest tests/orchestrator -qpytest tests/workers -q- Run
python3 scripts/validate_docs.pyfor doc changes. - If prompts, CLI behavior, config loading, or shared runtime code changes, run the closest impacted tests before finishing.
Prompting Codex in this repo
For non-trivial tasks, make the request explicit about:
- goal
- relevant files or docs
- constraints, especially architecture or behavior constraints
- done-when criteria and validation commands