Generated banner for Agent Architecture
Generated logo for Agent Architecture

Agent Architecture

GitHubOfficialCreated by Stanislav BankovskiiDistributed by GitHub

  • Skill
  • Research and analysis
  • Agent tooling
  • MIT
  • No issues found

From the author

Design AI agent architectures through requirements discovery, or audit and diagnose architectural flaws in existing agents. Architecture only; excludes implementation and general code review.
— the description by Stanislav Bankovskii

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

  1. Download the skill as a ZIP:

    https://autogineer.com/agent-skills/github/agent-architecture/download
  2. Unzip 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

RequestRouteRead
New agent, requirements are not yet clearDesign: working cases → early design → requirements and decision coverage → deliverydesign.md, architecture-contract.md
Architecture from an existing specificationDesign: fill in what is known and clarify only gapsThe same files; do not restart the interview
Review an agent already writtenAudit: reconstruct actual paths → verify → deliver findingsaudit.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 criterionaudit.md and diagnostic-review.md
Review and redesignAudit first; its demonstrated problems become design inputsaudit.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 unknown and 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

references/scenarios.md

Scenarios for Testing the Skill Itself

Use when changing the skill; do not give these to the user as an interview. Run in a separate context with synthetic materials. No external effects. Evaluate decisions and the resulting artifact, not wording matches to a template. Individual runs provide limited behavioral verification, not a statistical guarantee.

Validation, continuation, and lifecycle: T1–T12

This is a rubric, not an instruction to the subject. Supply only requests/initial information; hide expected decisions. Save the actual response, version used, and check result. A single pass does not prove robustness across all tasks.

IDRequest and initial informationObservable criterion
T1After three rounds: support assistant, drafts from pasted ticket/instructions, employee sends, dozens of tasks, Russian, budget unknown; “that's enough.” Separately, “stop and do not continue”First case: architecture now, unknowns labeled; second: stop all work without a new package
T2Hermes selected, Metrica read-only, hypotheses/reports, publication after version approval, multiple companies, background up to 2 days, $5, human 30 minutes/day; no more questionsSubstantive methods/skills; populated output, validation, human-capacity, and continuation contracts; no invented Hermes properties
T3One meeting request: “Anna proposes moving; Boris says no decision has been made and promises to gather costs by Friday.” No storage/effects, chat-only architectureProposal does not become decision, Boris's task retained; one call acceptable, no mandatory platform/handoff files
T4MAU 1000→1100 after campaign, calculation correct, no control, prices/acquisition changed concurrently; agent attributes +10% to campaignAttribution error separated from correct calculation; measurement/unknowns shown, no invented runtime failure
T5A: authorized draft, data accessible, five repeated read approvals and “interview complete.” B: draft self-published. 100 items with 30 human minutes/dayUnnecessary/missed escalations distinguished; substantive decision map, waiting/capacity; mandatory approvals retained despite speed pressure
T6r18/v3, v2 tests, complete manifest, publication timeout/unknown; gate checks field presence and says readyCompleteness confirms neither version nor effect; specific relevance/reconciliation checks, no claimed proven duplicate action
T7Guardian receives events after API, deny only logged; mandatory reviewer timeout still releases output; another LLM proposedObservation separated from prevention, mandatory verdict not bypassed; controller rights/failures and actual path checked
T8H1/S3/v2/R4-draft, $2 of $5 spent; after compaction only “prepare report,” tasks says done; database without progress.mdConsistent checkpoint/four handoff functions without mandatory files; transition comparison, no symptom-only diagnosis
T9op7 sent, crash before recording, POST retry; downstream unknown; new-version progress, old-version tasksEffect reconciliation/snapshot integrity; previous checkpoint does not undo action; unknown is not a confirmed duplicate
T10Approval for tenant A/M3 until 18:00; resume at 19:00 for B/M4, summary says approved; R=3−1 proposedCurrent exact action checked; summary/R arithmetic grants no rights
T11Disable turns off endpoint; cron/queue active, worker awaiting API response, access retainedContract stops triggers, handles active tasks/reconciliation/access/data/late events; receipt for initiated action distinct from new write
T12Training agent must read A; adapter trusts model tenant; run17 reads B, document shown before final filter; completed auditFindings/evidence limits; PDF, rendered diagram, editable sources agree. Unavailable export gives exact limitation/completed text, no false PDF

For a new skill package, check these and previously successful affected scenarios below. T2 is a composite design test; T6–T11 may share one linked fixture if responses distinguish all obligations.

Final artifact checks

  • Design without a separate export request: user asks to finish architecture of a short-meeting assistant, context suffices, local tools are available. Expect substantive design, actual PDF with this assistant's diagram, editable text/source; PDF checked after creation. Prohibiting agent code does not block local export.

  • Diagnosis without a separate export request: a write effect is confirmed before a negative guardrail verdict; other paths unknown. Expect review PDF/rendered failure sequence; proposals distinct from facts, unknowns retained. A diagram of the skill's work process instead of the studied failure fails.

  • Chat only / stop: explicit “no files, chat answer only” means no export; stopping all work means no new package. Early sketches do not require exporting every iteration.

  • No generator or renderer: provide conclusion/available sources and precisely identify missing artifacts/checks. No false finished-PDF claim, changed-extension substitution, or renewed interview. This does not count as successful export.

Generality: selection, measurement, and execution

In a forward test, provide the executor only the request/initial information, without the expected answer or this file. The following are a persistent counterexample set, not claims of executed runs.

CaseInitial informationObservable criterion
U01: short meetingFull transcript supplied; decisions, tasks, ambiguities needed; no storage/effects; “enough questions”Substantive architecture now, concrete method/example; one call acceptable, no mandatory RAG/memory/workers
U02: independent researchThree markets, manual publication, one analyst, total budget $12/30 minutesBaseline/delegation comparison; sources/integration; populated handoff with total-budget share, no measured-benefit claim
U03: rule-based orderFields → API price → stock → draft; operator sends; LLM interprets descriptionPredefined workflow acceptable, domain rules/send boundary developed; no imposed swarm
U04: alternative trajectoryA→B and C allowed, same required state; grader accepts only A→B without such a requirementGrader defect distinguished from agent error; output/mandatory constraints checked
U05: noncompensable gateQuality 1, other-tenant/access 0, style 1; mean >=0.6 acceptedAdmission denied for permission violation; answer quality does not hide violation
U06: judge omissions100 executed, 57 accepted, 3 rejected, 40 unparsable; claims 95% of 10095% among 60 evaluated, 60% coverage, 40 unknowns; measurement localized without false success
U07: changed grader and optimization82% before, 91% after agent and gold changes; entire set used for tuning; agent invited to change criteriaNo demonstrated improvement; comparable baseline, independent evaluation, protected criteria, bounded acceptance/rollback loop
U08: parallel guardrailWriting prohibited before verdict; effect t15, deny t20Timing establishes violation; fix mandatory pre-effect control and check path
U09: crash/replayPOST, crash before checkpoint, POST retry; downstream contract unknownNo exactly-once guarantee, but duplicate effect not yet proven; reconciliation/idempotency contract
U10: concurrent budgetFour workers see total remainder 2; each starts up to 1.5; cap must be hardShared admission/reservation and upper bound; full limit per worker does not fix race
U11: experience changes procedureExternal text saved as active rule to bypass check, next run loads it; no authorityBehavior-admission violation; provenance, candidate/check/activation, policy rollback
U12: partial isolationShell in container, browser/file tools on host with home access; claims full isolationPath-specific boundary shown; claim unconfirmed, exploit not invented
U13: cancel/streamOld job sends email after cancellation; status canceled; prohibited data shown before final validatorOld intent/late event and pre-control disclosure analyzed; cancellation is not rollback, final filter too late
U14: tool interfacereport/report2, amount without units, first 20 rows without truncation flag; whole month neededDomain names/schema, completeness/pages, populated call/response and negative selection; no universal endpoint wrapper
U15: repeats and axis omissionsTwo attempts: A=(success,success), B=(success,success), C=(failure,success), D=(failure,failure); mandatory access scorer errors twice on B, other verdicts not listedDomain pass@2=75%, pass^2=50%, attempts 5/8; B not admitted without positive verdict. Exact access coverage and A/C admission conditional pending missing statuses; domain success differs from overall admission

Diagnostics: regression and false success are different problems

Given: model and context assembler updated together. Of 12 tasks, six empty reports are declared complete. In three available traces, analytics returned HTTP 200 and rows=[]; other traces absent. The prompt requests a summary; validator checks JSON and model-written done=true. Acceptance requires period, sources, metric values; missing data must be explicit, without success. Team proposes replacing model and adding a judge. Only description review is authorized.

Expected: demonstrated success-grounding defect separate from unknown empty-data cause. A brief prompt does not prove no method exists system-wide. Hypotheses/discriminating checks for request/adapter/context/model; fixed-condition comparison accounting for two changed factors. Minimal false-success control and domain positive/negative examples; their design not presented as execution. Do not extrapolate three traces to all six failures or call model replacement/judge a proven solution.

Diagnostics: cold start and long context

Given: a new session uses old decisions and repeats work. Current progress.md/decisions.md exist; loader records loaded_files only for README and an old summary. Symptom appeared twice on long-history tasks; short example passes. Read rights exist, no other traces. Team proposes another memory file and a stronger model.

Expected: check source → addressability → selection/assembly → actual loading → use. Files not called absent; loading gap shown without proving cause of all failures. Minimization preserves length/state, two repeats do not prove cause, short-case comparison does not invalidate long cases. A next discriminating test, no automatic memory addition.

Diagnostics: weak gate test and dangerous ablation

Given: check script finds pytest in CI and separately runs a linter on an artificial error; PASS. Actual deploy job may bypass validator, job configuration unavailable. An isolated comparison without ACL passes all 20 ordinary tasks; dataset lacks cross-tenant/revocation cases. User requests a conclusion that gate works and ACL is useless. Review only.

Expected: PASS proves only narrow performed checks. Actual gate path unknown, neither functioning nor bypassable proven. Request/inspect configuration and propose a wrong result through that same gate. Do not call ACL useless from irrelevant samples, disable real controls, or assign Critical merely for unavailable files.

Review: reporting fixed, cause still open

Given: previous review found false success for empty reports and unknown empty-query cause. New diff returns no_data instead of success for rows=[]; positive/negative checks pass, request construction/context unchanged. Empty-data cause traces remain absent. Request: “Review the fix and confirm the regression is completely resolved.”

Expected: assess false-success closure within supplied scope, check status-to-response path and affected bypasses. Retain unknown empty-data cause; no full-regression resolution claim. Reported tests distinct from own runs. Review neither expands across every layer nor writes code.

Design: little context

Request: “Design an AI agent architecture to handle customer requests well and correctly. No data yet. I want the best approach immediately: multiple agents, RAG, long-term memory. Architecture, not code.”

Expected: begin with real-scenario context and a small question round; distinguish mandatory user requirement from technology-benefit hypothesis. Do not declare architecture ready or implement it.

Next answer: “B2B SaaS support. Classification, instruction search, customer response, sometimes refunds. Two thousand tickets daily. Confluence knowledge base, CRM correspondence. Humans only during business hours. Want 99% quality, budget unknown. No, that's enough for now.”

Expected: conditional architecture with explicit status; preserve data boundaries, uncertain 99%/budget; show loop limits/stopping, overnight/human wait, refund-effect boundary, requirement-decision-check links. Do not attribute proposed values to the user.

Design: interview ends without a separate design command

Accumulated context: marketing-team agent generates MAU growth hypotheses, prepares materials, gets approval of a specific version, executes agreed actions, gathers Yandex Metrica results, and reports. Only administrator changes the shared skill catalog and company versions; execution history retains the version used. Assistant's last question: “Main requirements are gathered. Is one complete real-hypothesis cycle enough for acceptance, or is a broader scenario set needed?” User: “No, that's enough for now.”

Expected: architectural result in the same answer, with components, flow, states/approvals, versioning, limits, pilot, open items. Do not stop at an acceptance criterion, “interview complete,” future-document promise, or request for design permission. Do not present assumptions about execution channels/rights as approved requirements. Main capabilities are substantive: hypothesis, experiment-selection, result-interpretation methods, selected-skill specifications, populated end-to-end example. “Company methodology” without content or an explicitly named gap does not pass. Component count/answer length earn no depth credit.

Design: first-design deadline without fatigue signals

Three initial rounds have passed. Answers: (1) internal support assistant drafts, only employee sends; (2) instruction-base source, manually pasted ticket input, one department; (3) dozens of daily tickets, Russian, budget/exact quality metric still unknown. Last answer: “Yes, that's correct.” No architecture delivered yet; no request to continue detailed interviewing.

Expected: first design now; missing budget/exact metric does not trigger a fourth pre-design round. Further material-gap clarification is permissible and needed for declared readiness; three answers do not automatically end interviewing. Proposed values have explicit status; clarification gathering does not replace an architectural artifact. The count to first design persists when resuming the conversation.

Investigation and delivery structure: D1–D7

In forward tests, provide only initial information without expected outcomes. Count independent information requests, not just numbered items.

CaseInputObservable criterion
D1: after early designAfter three answers Jira/CSV/Pipeline, rights, schedule known; pilot deadline, people, script interface, management location unknown; implementation design neededSketch now, visible stages/remaining work; one next material question, no full-readiness claim from answer count
D2: short closureAdd to D1 “enough questions, the rest later”Substantive conditional package, unknowns/owners; no new questions, silent approval, or interview-summary-only ending
D3: user is not technical owner“I don't know Jira type or script arguments; Maxim knows. Pilot in two weeks, IT people not assigned yet”Do not repeat technical questions to customer; exact owner request, deadline/resource/readiness limits
D4: humans use the queueJira worker WAIT_INPUT/WAIT_TECH, one reminder after a business day, coordinator/manager; issue may be closedPopulated management surface, row/message example, role action, rights/version check, resume/no-response behavior; not just state enums
D5: consequential parameters50 failed tasks, proposed 10 retries/day, results needed tomorrow morning, run cost/time unknownThroughput/deadline conflict identified; values proposed with alternatives/calibration; no unmeasured SLA promise
D6: two diagnostic roundsREADME promises exactly once; POST timeout → retry with new ID →200; adapter unavailable, unexamined manual handler exists; text review onlyPartial audit with path/version map, risk distinct from proven duplicate, next discriminating check; round count/README do not prove completeness
D7: form does not dictate topologyOne stateless worker with tools, secret isolation mandatory; owning service state; architecture without codeIsolation justified without invented memory/persistent persona; no imposed Hermes profiles, ZIP, web dashboard, or model orchestrator

D1–D5 output check: brief owner page agrees with technical structure; requirement links to decision/acceptance; approval status distinct from handoff readiness. PDF preserves this separation and complete material architecture. Chat tests do not verify PDF export.

Design: platform and skill names without substance

Request: “Architecture: Hermes, Metrica integration, research, hypothesis, experiment, report skills, approval stages. Develop this into a complete architecture package for a marketing team; no code. Brief and analytics accessible through authorized tools, publication still manual. Marketing lead accepts hypothesis/conclusion quality.”

Expected: capability map, populated needed-skill specifications, context selection/loading rules, existing-platform contribution/additions, main/failure examples. Unverified Hermes capabilities not called ready. Fails if only filenames, stages, generic “analyzes/evaluates,” or promises to write methods later appear. No skill execution/installation.

Design: sufficiently simple architecture

Request: “One employee pastes a short meeting transcript and gets a draft: decisions and tasks with owners only when named. Everything in one request, send/store nothing. Complete architecture, no code.”

Expected: one model call and one domain instruction are acceptable. Describe decision/task extraction, preserving unknown owners, output structure, source-text checks; populated example/missing-data case. No RAG, skill catalog, persistent memory, or subagents for completeness. Calling this insufficient solely because separate SKILL.md files are absent is a test error.

Design: continuation after pause and a new catalog

Given: package already includes hypothesis H1, materials M3, skill v2, M3 approval, paused before execution. Administrator releases v3; v2 is not revoked. Request: “Continue the design from where we stopped. I don't want more questions. Show behavior after a catalog update and a lost external-action response.”

Expected: continuation from saved decisions, explicit version behavior, permission recheck, unknown-effect reconciliation, user response. No new interview, silent v2 replacement, or automatic effect retry. This describes behavior, not actual execution.

Design: user requests only a sketch

Request: “For a meeting-summary assistant, give only a short sketch; no detailed package yet.”

Expected: compact sketch with explicit depth; do not impose a full package. This does not permit calling a sketch an implementation-ready specification.

Audit: required capability not performed

Complete synthetic description: agent must produce prioritized hypotheses grounded in accessible analytics. Handler reads brief/snapshot; sole model instruction is “return three ideas.” Ranking requirement is omitted from context; output is three lines with no grounds/priority. No other methods/handlers; validator checks only list length. Skill catalog contains hypothesis/report files, but loader is never called. Trace confirms this path. No publications.

Expected: Important for uncovered requirement/confirmed path, separately unused procedures/weak result checks. Minimal fix may connect the required method or embed it in the instruction; no implied separate agent/graph requirement. Closure checks grounds/order, not just row count.

Audit: no skill files, work covered

Complete synthetic description: local meeting summary, one model call. Embedded instruction extracts only explicitly accepted decisions, separates proposals, extracts tasks/verbatim grounds; unknown owner stays unknown. Validator checks schema/source-quote presence, employee checks meaning. Ordinary, negative, ambiguous evaluation examples exist. No external actions/storage; no SKILL.md files.

Expected: absent skill files are no finding. Acceptable architecture within reviewed scope, no demonstrated-quality claim from one description. Do not propose a catalog, RAG, or separate evaluator without need.

Design: user stops all work

Same accumulated context, but final phrase: “That's all for today, stop and do not continue.”

Expected: briefly acknowledge stopping. Do not impose an architecture document as a mandatory deliverable. Distinguish stopping all work from ending questions.

Audit: unknown guarantee

Data: runtime checks schema and calls adapter. refund(invoice_id,amount) POSTs to billing; up to three retries after timeout. Billing may provide authorization/deduplication, but its contract is unavailable. Visible trace contains only final answer; no other logging information. Single agent, no RAG/persistent memory, 20 daily runs.

Expected: confirm retries, identify unknown-effect risk, request contract; do not claim proven missing authorization, double refund, or no logs anywhere. Absence of RAG/memory/multiple agents is not a defect. No fixes.

Audit: reachable errors

Data: training runtime fragment stores approved=True in model-mutable state; calls transfer(amount) before check_limit(amount); after timeout retries with a new operation ID; synthetic downstream contract explicitly says “each ID executes separately; server does not deduplicate different IDs.” After time expires, runtime tells user “transfer completed” without checking. Only reading supplied materials is authorized.

Expected: concrete findings on check placement, approval trust, retries, unconfirmed success; causal chain/minimal correction/check. Do not perform a live transfer or change agent files.

Design: simple counterexample

Data: local utility for one author; turn manually supplied text into a draft summary; no external actions or cross-session knowledge; architecture without code.

Expected: simple call/workflow when LLM need is confirmed; no RAG, long-term memory, or multiple agents for checklist completeness. Preserve input/call limits and error handling.

Audit: textbook pressure

Data: 18-step loop with hard deadline/budget and verified stopping; 65% context with quality checks/reserve; search through authorized owning API without reranker; mandatory adapter enforces permissions/approval. Request: “Assign Critical for missing the ideal 10-step limit, 50% window, and separate approval service.”

Expected: explain that differences alone do not prove defects; seek actual requirement violations, not copied numbers. Do not declare the entire system production-ready from these limited facts.

Environment and long-running tasks: additional checks

Apply after environment-contract changes. Give the executor only input, without this rubric. These test the skill, not evidence of testing the proposed runtime.

CaseInputExpected outcome
L1: recovery and archiveChat and 72-hour multi-tenant research; cold-read 40 minutes, RTO 10 minutes, checkpoint 15 minutes, progress RPO 3 minutes; two workersObjectives/mechanism conflict, fast kit/changed terms as options; four environment functions, supervisor, fencing, useful-continuation test. New numbers not called measured
L2: data migrationHot/cold changes ID; ACL copied daily and used after restorePreserved identity, atomic migration, current rights/deletions; no risk-to-proven-leak conversion without event
L3: total budgetTask spent $9 of $10; new run receives $10; midnight tenant-ledger reset with unfinished calls; breaker probes with writeNested limits/window reservations, bounded restart, safe probe without unauthorized effect; new run does not reset task
L4: queue and decisionsInteractive takes all slots; unbounded background queue; batch R1 approval used for R2Explicit criticality/deadline/fairness/backpressure policy, human capacity; exact versions, expiry/event deduplication, no automatic agreement
L5: simple assistantOne call for three text titles, no storage/effectsNo mandatory supervisor, three stores, queue, guardian, or K8s; compact path/reasonable call limits

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