Agent Architecture
GitHubOfficialCreated by Stanislav BankovskiiDistributed by GitHub
- Skill
- Research and analysis
- Agent tooling
- MIT
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides a systematic approach to defining the architecture of AI agents or auditing existing ones. It focuses on requirements discovery, structural integrity, and operational reliability, ensuring that agent designs are justified by specific needs rather than unnecessary complexity. It delivers comprehensive architectural packages, including diagrams and validation plans, without performing implementation or code-level reviews.
What it does
- Designs new agent architectures based on clear requirements discovery.
- Audits existing agent architectures to identify flaws and verify paths.
- Diagnoses performance issues or failures in agent logic.
- Produces architectural reports including Mermaid or C4 diagrams.
- Defines validation loops, state management, and execution contracts.
- Evaluates the necessity of complex components like RAG, memory, or multi-agent systems.
When to use it
- When you need to design an AI agent from scratch and want a justified, efficient architecture.
- When an existing agent is failing, producing errors, or not meeting performance goals.
- When you need to verify if your current agent design is robust and scalable.
- When you need to document an agent's architecture for stakeholders or developers.
Advantages
- Promotes architectural simplicity by requiring justification for every added component.
- Provides evidence-based audits rather than subjective assessments.
- Ensures clear boundaries between agent logic, tools, and external effects.
- Delivers professional, ready-to-use architectural documentation and diagrams.
- Focuses on verifiable outcomes and robust error handling.
Usage examples
- “I need to design an agent that handles customer support tickets. Can you help me define the architecture?”
- The agent will guide you through a discovery process to define requirements, select the appropriate topology, and deliver an architecture package including diagrams and validation rules.
- “My current agent keeps getting stuck in a loop when searching for data. Can you audit it?”
- The agent will reconstruct the current execution paths, identify the root cause of the loop, and propose a corrected architectural approach with diagnostic checks.
Install
Download the skill as a ZIP:
https://mp-staging.autogineer.com/agent-skills/github/agent-architecture/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip agent-architecture.zip -d .agents/skills
Documentation by Stanislav Bankovskii
AI Agent Architecture
Help the user obtain a justified architecture for their task or an evidence-based audit of an existing agent. Deliver architectural decisions and ways to verify them, without implementing the agent. By default, completed work includes a PDF report and a visualization of the results. An “ideal architecture” fits the requirements, cost of failure, and team resources; it does not maximize the number of components.
Choose a route
| Request | Route | Read |
|---|---|---|
| New agent, requirements are not yet clear | Design: working cases → early design → requirements and decision coverage → delivery | design.md, architecture-contract.md |
| Architecture from an existing specification | Design: fill in what is known and clarify only gaps | The same files; do not restart the interview |
| Review an agent already written | Audit: reconstruct actual paths → verify → deliver findings | audit.md, and architecture-contract.md as criteria |
| Agent makes mistakes, has degraded, or falsely reports “done” | Diagnosis within the audit: case → hypotheses → discriminating checks → correction and closure criterion | audit.md and diagnostic-review.md |
| Review and redesign | Audit first; its demonstrated problems become design inputs | audit.md first, then design.md |
In either mode, read source-map.md once: it explains the origins of the principles and the textbook's limitations. The original PDF is not needed for ordinary skill use. scenarios.md is needed only to test the skill itself.
When choosing or revisiting the execution approach, use architecture-selection.md; when designing acceptance or reviewing quality claims, use evaluation-design.md. Develop the validation loop and completion evidence using validation-loop.md; for long-running/background work, pauses, recovery, and competing sessions, use execution-continuity.md, including storage, RTO/RPO, budgets, the human decision queue, and scheduling. Develop delegation, mutable memory, execution isolation, and long-running/streaming interaction only when the task has these properties. A section's existence does not make its question mandatory: material gaps under discovery-protocol.md determine depth.
Shared decision rules
First read the available specification, local instructions, architectural decisions, and relevant materials. Use code to reconstruct architecture, not to make unsolicited fixes. Do not run an application with external effects for an audit.
Maintain a brief register: source-confirmed / user requirement / proposal / assumption / open question / not applicable. Identify where requirements came from. A user decision and an architect's hypothesis have different statuses.
Corporate contracts and accepted decisions apply only within their own project. The textbook is an engineering reference, not a source of authority or a replacement for local canon. Identify conflicts rather than resolving them silently.
First consider ordinary automation without an LLM, a single call, and a predefined workflow. Introduce an agent loop, RAG, persistent memory, MCP, or multiple agents only for a concrete need. For each added complexity, identify its benefit, cost, verification method, and simpler alternative.
Do not select a model or framework before understanding the task. For a concrete selection, check current official documentation and version constraints. A documented capability is not yet demonstrated quality on the user's data.
Separate probabilistic model decisions from programmatically enforced rules. Describe where permissions, parameters, budget, and action admissibility are checked before an external effect, including bypass paths and resumption.
For a timed-out external write, a readback that finds nothing does not by itself prove that no effect occurred. Permit a retry only under an established downstream idempotency contract or authoritative proof of non-execution; otherwise retain
effect unknownand reconcile or escalate. Apply this rule in concrete flows and examples as well as in the risk section.An audit or design does not authorize writing code, changing agent settings, publishing, or initiating external actions. On a subsequent explicit implementation request, hand the architecture to the appropriate process; this skill does not continue into implementation itself.
How to work
Before an interview or audit planning, read discovery-protocol.md. Show a clear route and maintain a coverage map. By default, devote each turn to one decision or working episode; do not hide several independent topics inside one question. Material gaps and evidence determine depth. There is no fixed total round limit.
Deliver the first useful design as soon as context is sufficient, otherwise no later than the third answer; the count does not reset on continuation. This limits the wait for an early result, not the completeness of the interview. If the task is too unclear, show a map of what is understood and conditional options. After the sketch, continue investigating material gaps under the protocol; two or three rounds alone do not justify declaring readiness.
The first design includes the goal and boundaries, main capabilities and their outputs, recommended components, main flow and external actions, key constraints, assumptions, and open decisions. It is a sketch for early feedback. The interview budget limits the wait for a sketch, not design depth: develop it into an architecture package from what is already known, without waiting for a separate instruction to elaborate. If context suffices, deliver the package immediately. If the user explicitly asks only for a sketch, respect and label that depth.
Phrases such as “that's enough,” “let's go with this for now,” “the rest later,” or “enough questions” end requirements gathering: deliver the architecture from accumulated context in the same answer. Do not require a separate “now design it” instruction or end at “interview complete.” If a design has already been delivered, show its current final version or a substantive update. An explicit request to stop all work (“don't continue,” “that's all for today, stop”) means stop, rather than deliver a new design.
If the user does not know an answer, propose a justified option and label its status. Represent unknowns as assumptions and open decisions. Unclear authority blocks the corresponding external action in the proposed architecture, but not delivery of the architecture itself. Silence and ending the interview do not approve proposals.
After a significant answer, update the working summary of requirements and decisions. Save it in an agreed document if artifact creation is within the request; otherwise maintain it in the conversation. On continuation, start with that summary and changed information.
After the first design, clarify specific branches and uncovered material requirements, including real exceptions, human work, and feasibility. Explain which decision the answer will change; propose internal mechanisms yourself. Do not confine gap discovery to components already drawn or restart a questionnaire. Finish when the declared scope has sufficient coverage; if further confirmation is unavailable, deliver a conditional package with owners and checks for gaps.
Complete design with the architecture package from architecture-contract.md: domain capabilities and methods, output contracts, the structure of instructions/skills/materials, allocation between the existing platform and additions, a populated end-to-end example, and checks. Read capability-design.md for this part; in an audit, use it to check required capabilities. Describe the agent's main work deeply enough that a developer does not have to invent its method again. A platform name and a list of stages do not accomplish that.
Always cover limits on iterations, time, tokens/money, and tool calls, stopping rules, and what the user receives on stopping. Mark unknown values as open or proposed rather than inventing an agreed limit. An architecture package with skill specifications remains a design: it does not imply skill installation, code implementation, or verification of a running agent.
Complete an audit with demonstrated problems, separately identifying unknowns and accepted tradeoffs. Do not claim production readiness from reading code. Architectural readiness for implementation and demonstrated operational quality are different outcomes.
Final artifacts
When completing design, audit, or diagnosis, read result-delivery.md and create a PDF of the results with a rendered Mermaid or C4 diagram as appropriate; retain editable text and diagram source. Do this as part of completion without a separate user request to “make the PDF now.” An early sketch and intermediate answers do not require repeated export. Explicit user constraints (“chat only,” “no files/PDF”) and a request to stop all work take precedence. Creating the report does not authorize implementing or changing the reviewed agent.
Package metadata
This package is distributed under the MIT license. Optional client metadata supports compatible Agent Skills clients; Copilot uses SKILL.md and the linked references.
Files
- ATTRIBUTION.mdAdded by AutoGineer982 B
- LICENSE.txt1.1 KiB
- SKILL.md9.8 KiB
- agents/openai.yaml309 B
- references/architecture-contract.md20.3 KiB
- references/architecture-selection.md7.3 KiB
- references/audit.md9.5 KiB
- references/capability-design.md6.1 KiB
- references/design.md10.2 KiB
- references/diagnostic-review.md13.0 KiB
- references/discovery-protocol.md8.6 KiB
- references/evaluation-design.md7.5 KiB
- references/execution-continuity.md13.4 KiB
- references/result-delivery.md7.4 KiB
- references/scenarios.md24.7 KiB
- references/source-map.md18.4 KiB
- references/validation-loop.md6.8 KiB
references/discovery-protocol.md
Guided Interview and Evidence Sufficiency
This protocol determines investigation depth, not a fixed number of questions. Two rounds can cover a simple case with a ready specification; twenty answers do not close an unknown external-effect contract. Track time to the first useful design, requirements coverage, and readiness for implementation handoff separately.
1. Visible route
Initially show the current stage and nearest result briefly: task and real cases → working boundaries → architectural decisions → completeness check and delivery. For diagnosis: object and symptom → actual path → discriminating checks → conclusion and closure plan. Begin at the stage matching available context. This is orientation, not four mandatory sequential questionnaires.
An early design enables feedback. Deliver it immediately when context suffices, otherwise no later than the third answer. This limit concerns only the wait for the first design: it neither ends the interview nor confirms completeness. If even the goal is unclear, show a map of understanding and conditional options with one key gap instead of an invented topology. Unresolved material questions, not a counter, determine subsequent rounds.
After a substantive block, show a brief checkpoint: what was learned, which decision changed, which material topics remain open, and what will be ready after the next block. Do not promise “one last question” while material gaps remain. Do not invent a readiness percentage from filled rows. Moving to the next stage needs no separate permission.
2. One turn—one clear task for the interlocutor
Choose the question whose answer most affects boundaries, output, safety, cost, or feasibility. Briefly connect it to the previous answer: what I understood → what remains unknown → which decision depends on the answer → question. Do not turn this into four repeated headings.
By default, ask about one decision or working episode. A related clarification is acceptable; multiple questions are acceptable by user preference or when answers naturally come together. Do not bundle deadline, server, budget, and on-call owner into one numbered item.
Count independent information requests, not numbers or question marks. To evaluate the interview, retain counts of turns, separate topics, repetitions of known facts, and questions with no decision impact.
Ask for the latest real case. If none exists, work through an explicitly simulated case and identify who will verify it before implementation and how. Do not force invented statistics.
Offer optional answer examples if starting is difficult. “In your own words / I don't know yet” is acceptable; selecting a suggestion does not prove an architectural decision.
Do not ask a customer about frameworks, database schemas, or fencing when they need to describe desired behavior. The architect proposes technical mechanisms, verifies API facts through authorized sources, or addresses the technical owner.
“I don't know” moves the question to the register with an owner and verification method. Repeat it after a new source or contradiction emerges, not merely to fill a template.
Connected example: “A corrected file must not run automatically. How does the manager identify the version to check again?” After the answer, record the exact signal and version; do not add hosting and hiring questions in the same turn.
3. Design coverage
Maintain one compact map; documents and previous answers populate it without repeated questioning. For a material row: basis → decision/constraint → knowledge status → who closes the gap and with what. Do not replace SKILL.md knowledge statuses with a generic “discussed.” “Not applicable” needs a reason. There is no one-question-per-row requirement.
| Area | Sufficient basis for a decision |
|---|---|
| Change and first scope | Current work, required result and recipient, why start now, included/deferred scope; observable success criterion |
| Working cases and method | For material task classes: trigger, concrete input, substantive decisions, actions, handoff, output, and validation; ordinary case and significant exceptions |
| Data and authority | Sources of truth, access and prohibitions, whose identity acts, exact confirmation subject; unknown rights are not permission |
| State and failure | What survives a run, state owner, retry/cancel/effect reconciliation, recovery and problem owner; as applicable |
| Human work | Where tasks are assigned, queues/errors viewed, confirmation or correction and resumption occur; response deadlines and no-response behavior |
| Feasibility | Desired pilot deadline, available implementers/support, existing environment, budget/load constraints; unknowns affecting first scope |
| Selection and acceptance | Justified execution approach, capability/output contracts, significant alternatives, success/unacceptable-result checks, acceptance owner |
One typical example does not cover different authority, user, or external-effect classes. Select additional cases by risk and diversity, explaining the selection. Do not design the entire deferred backlog for a “complete interview.”
At a checkpoint, separate remaining items:
Blocks a decision/implementation: the answer changes a mandatory capability, data/authority boundary, operational ownership, or deadline feasibility. Continue specific clarification or explicitly limit the relevant part's readiness.
Requires engineer verification: for example, the Pipeline rerun contract. Identify owner/role, exact material, and criterion; without access, do not portray verification as completed.
Can be proposed and calibrated: internal timeout or pool size. Show consequences and tuning method; do not call it agreed.
Deferred/not applicable: reason and revisit trigger where needed.
Finish investigation when material areas have sufficient grounds for the declared scope, when further progress requires an unavailable source/owner, or when the user stops questions. In the latter two cases, deliver a substantive conditional result and exact remaining verification now. Do not continue repetitive questions, wait indefinitely, or declare a gap closed. SKILL.md stopping instructions take precedence.
4. Diagnosis: path coverage, not questionnaire coverage
Ask only for what available materials cannot provide. Initially formulate expectation → observed discrepancy → object/version/environment → available evidence. For a general audit, select representative paths by mandatory scenarios and risk; do not invent a symptom.
Verification map: obligation/path | versioned evidence | what was actually checked and how | conclusion/unknown | next discriminating check and owner. As applicable include normal, failure, retry/resume, concurrency, alternative entry, and external-effect boundary. An unchecked path does not inherit a neighboring path's success.
Distinguish owner assertion / static evidence / execution observation / reproduced result. An interview reconstructs expectations and finds sources; it does not replace traces, downstream contracts, or tests. README content does not confirm enforcement.
After each significant check, update hypothesis status and coverage. If the next check distinguishes causes and is available within authorized scope, perform it; two rounds of questions are not a reason to stop. Without the source or permission, deliver a partial conclusion with an exact boundary instead of a categorical cause. Use diagnostic-review.md for hypothesis and closure methods.
5. Readiness and handoff
State three independent statuses:
Knowledge: confirmed, proposed, and unknown in the coverage map.
Agreement: conditional design / architecture for approval / user-approved. The last requires actual confirmation of a specific version or decisions.
Handoff: sketch / detailed with blockers / sufficient for implementing the stated scope. The last is allowed only with no critical unknowns, no need for the developer to invent the main method, and defined authority/responsibility, interfaces, result validation, and feasibility constraints. Approval does not prove technical readiness; technical detail does not imply approval.
An open question with an owner remains open. A detailed isolated part may be handed off with an explicit boundary; that does not make the whole project ready. Operational quality is confirmed separately by tests of the implemented system.
For audits, state complete within declared scope / partial, checked paths, and undetermined causes. A complete audit does not mean no defects or proven safety outside its scope. Do not calculate a universal “ideality” score from filled fields.
Requirements and compatibility
Written for: GitHub Copilot
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Stanislav Bankovskii
- Publisher
- GitHub (Official)
- Distributed by
- GitHub
- Source
- github/awesome-copilot · skills/agent-architecture · commit 797337f
- Licence
- MIT License (redistribution allowed)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Stanislav Bankovskii or GitHub.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download agent-architecture.zip