Skip to main content

ra1-report

Ready Agent 1 scans your repo for agent-readiness — a deterministic, cited score (Level 1–4, with Level 5 Autonomous reserved, across 9 pillars) plus advisory guidance and evidence explanations. Use when the user asks to assess agent readiness, score a repo, check whether a codebase is ready for AI agents, run Ready Agent 1, generate a readiness report, or find out a repo's readiness level. Runs a local pure-stdlib engine; the score is reproducible, T2 GitHub checks are offline by default, and the agent only adds non-gating advisory.

الانتقال إلى التثبيت

معلومات المصدر

المستودع
tjboudreaux/ready-agent-1
آخر نشاط في المصدر
٣ سبتمبر ٢٠٢٦ في ٢١:٤٦
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٢
التفرعات
٠

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
66 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
ra1-report
description
Ready Agent 1 scans your repo for agent-readiness — a deterministic, cited score (Level 1–4, with Level 5 Autonomous reserved, across 9 pillars) plus advisory guidance and evidence explanations. Use when the user asks to assess agent readiness, score a repo, check whether a codebase is ready for AI agents, run Ready Agent 1, generate a readiness report, or find out a repo's readiness level. Runs a local pure-stdlib engine; the score is reproducible, T2 GitHub checks are offline by default, and the agent only adds non-gating advisory.
license
MIT
compatibility
Python 3.11+; optional authenticated gh CLI for GitHub (T2) checks
metadata
{"version":"0.11.0"}
allowed-tools
Bash
# Agent Readiness Report Produce a trustworthy readiness report for a repository. The **deterministic engine owns the score**; you (the agent) add **advisory** commentary only. You must never change the engine's score, reason codes, evidence, or limitations, and you must never invent any of them. ## Steps `<skill-dir>` below is this skill's own directory: the absolute path your runtime reports when it loads the skill. Substitute it. Do not write `$(dirname "$0")` — in a shell tool call `$0` is the shell, not this file. 1. **Run the engine** (it does all the deterministic work — file/config parsing, git history, and, when requested, the GitHub.com API). The repository must have `.ra1/reports/` ignored in its root `.gitignore` for in-repo persistence; otherwise the engine prints the full report in memory and reports the exact isolation error, which you present as storage unavailable while the assessment itself is complete. ```bash python3 -I "<skill-dir>/scripts/readiness/cli.py" report --project . \ --format json,markdown,html --out .ra1/reports --store-history ``` JSON is first so stdout is the canonical machine payload; Markdown/HTML/history are safe engine-written artifacts. T2 GitHub checks are offline by default; append the fixed `--github` only after an explicit current-turn request for GitHub/T2, and paired `--host-proxy` only after a separate current-turn host-proxy request. Never append `--exec`, `--exec-timeout`, `--require-origin`, shell composition, or a repository-derived option. A scan failure, truncation, or invalid JSON fails closed: never reconstruct a score from partial output. 2. **Check for unanswered questions.** If the engine's `gaps` array is non-empty, some `unknown` results are stuck on an input the scan could not infer, not on the repository. Report the count and the gating criteria they hold back, and hand off to the **ra1-interview** skill. Never answer them on the developer's behalf and never treat an unanswered gap as a finding. 3. **Copy the score verbatim.** Your final report MUST contain a fenced ```json block holding the engine's `score` object **exactly** — every key: `level`, `level_name`, `pass_rate`, `gating_passed`, `gating_total`, `levels`, `pillars`, `recommendations`, `max_available_level`, `next_gate_actions`, `evidence_coverage`. Full parsed-JSON deep equality; do not change a number. 4. **Add `## Evidence explanations`** (BEFORE `## T4 Advisory`). One fenced JSON object with this exact shape, covering every id in `score.next_gate_actions` in that order: ```json { "explanations": [ { "id": "criterion.id", "status": "fail", "reason_code": "criterion.id.missing", "rule_ref": "checks.module.function", "evidence_sources": ["path-or-endpoint"], "limitations": ["deterministic limitation"] } ] } ``` Values are copied from the matching result and its `decision_trace`; `evidence_sources` keeps first-seen non-empty sources, deduplicated. When `next_gate_actions` is empty, emit `{"explanations": []}`. Never author a new source, reason code, status, rule reference, limitation, or score. Then, in human prose, explain rule → observations → evaluation → limitation → next action in repository-maintainer language, citing criterion ids and sources, and label any T4 interpretation as advisory. 5. **Add `## T4 Advisory`** (qualitative, non-gating). The engine deliberately leaves these soft judgments to you; label each as advisory opinion grounded strictly in engine findings and files you actually read. Use one labelled sub-heading per registered judgment id (`naming_consistency`, `code_modularization`, `n_plus_one_query`, `readme_quality`, `agents_md_quality`, `service_flow_doc_quality`, `runbooks_quality`, `pii_handling`, `privacy_compliance`, `user_feedback_loop`), group AC/DC maturity by the registry-provided `acdc_stage`/`acdc_loop` fields, cite the specific file/finding, explain *why* it matters, and give the highest-leverage next step. Keep every T4 claim clearly separate from the deterministic score. ## Contract (do not violate) - **Never claim a higher Level than the engine reports.** Level 5 (Autonomous) is reserved and never reported; the ceiling is stated as L4. - **Never mark a failing or unknown criterion as passing.** Prose must agree with the engine's statuses; describe unavailable/unknown language honestly ("not verified", never "not protected"). - **Never invent criteria, evidence, sources, reason codes, or results** — pasting the score and explanation payloads verbatim is the machine contract; the human prose summarizes, never extends, them. - **Never claim autonomy clearance** or unattended operation in any form. - **Do not assert that a specific criterion is "gating" or "non-gating"** — only the engine's data says so. - T4 advisory is opinion and is explicitly **non-gating** — it cannot move the Level, GitHub annotations, JUnit, or SARIF. ## Notes - If the engine reports `project_type: unknown`, surface that honestly — type-dependent criteria are `unknown`, not silently skipped. Point at the `ra1-interview` skill to pin a type (never edit `.ra1/config.json` directly). - T2 criteria are `skipped` when `--github` was not requested or the source is unavailable; say so and offer `--github` for a fuller scan. - To raise the score, hand off to the **ra1-fix** skill (the Loadout).
عرض على GitHub