Setting the file. One moment.
Report Template · Acreadiness Assess · github/awesome-copilot · Skills Docs
ContentsBack to the top of the page Raw file
report-template.html
HTML · 227 lines · 12 KB
15 each item. Remove blocks that don't apply (e.g. policy section if
16 no policy is active).
17 - Keep the file self-contained: no external CSS/JS, no network fonts.
18 - Preserve the <script type="application/json" id="raw-data"> block
19 and embed the compact AgentRC JSON inside it.
20
21 Placeholders used:
22 {{repoName}} repository name
23 {{date}} ISO date the report was generated
24 {{level}} maturity level number (1-5)
25 {{levelName}} maturity level name (Functional, Documented, ...)
26 {{overallPct}} overall readiness as integer percent
27 {{grade}} letter grade A-F
28 {{passRatePct}} pass rate as integer percent (or "—" if N/A)
29 {{thresholdPct}} policy pass-rate threshold (or "—")
30 {{policyName}} active policy name (omit policy section if none)
31 {{policySummary}} one-paragraph summary of disabled/overridden criteria
32 {{rawJsonCompact}} compact JSON for embedding
33 {{rawJsonPretty}} pretty JSON for the <details> view
34
35 Pillar card placeholders (repeat per pillar):
36 {{pillarName}} {{pillarScore}} {{pillarRelevance}} (high|medium|low)
37 {{pillarStatus}} (good|warn|bad — drives bar + dot colour)
38 {{pillarWhat}} {{pillarWhyAi}} {{pillarCurrent}} {{pillarRecommendation}}
39 -->
40 <! DOCTYPE html >
41 < html lang = "en" >
42 < head >
43 < meta charset = "UTF-8" />
44 < meta name = "viewport" content = "width=device-width, initial-scale=1" />
45 < title >AI Readiness — {{repoName}}</ title >
46 < style >
47 :root {
48 --bg : #0f1115 ; --panel : #161a22 ; --panel-2 : #1d2230 ; --border : #262c3a ;
49 --text : #e6e9ef ; --muted : #8a93a6 ; --accent : #6ea8ff ;
50 --good : #4ade80 ; --warn : #fbbf24 ; --bad : #f87171 ;
51 }
52 * { box-sizing : border-box ; }
53 html , body { margin : 0 ; background : var ( --bg ); color : var ( --text );
54 font : 14 px / 1.5 -apple-system ,BlinkMacSystemFont, "Segoe UI" ,Roboto, sans-serif ; }
55 a { color : var ( --accent ); }
56 header { padding : 28 px 32 px ; border-bottom : 1 px solid var ( --border );
57 background : linear-gradient ( 180 deg , #141823 , #0f1115 ); }
58 header h1 { margin : 0 0 4 px ; font-size : 22 px ; }
59 header .meta { color : var ( --muted ); font-size : 13 px ; }
60 main { max-width : 1180 px ; margin : 0 auto ; padding : 24 px 32 px 80 px ; }
61 .panel { background : var ( --panel ); border : 1 px solid var ( --border );
62 border-radius : 10 px ; padding : 20 px ; margin-bottom : 18 px ; }
63 .grid { display : grid ; gap : 16 px ; }
64 .grid.cols-3 { grid-template-columns : repeat ( 3 , 1 fr ); }
65 .grid.cols-2 { grid-template-columns : 1 fr 1 fr ; }
66 .kpi .num { font-size : 30 px ; font-weight : 700 ; }
67 .kpi .lbl { color : var ( --muted ); font-size : 11 px ; text-transform : uppercase ; letter-spacing : .8 px ; }
68 .badge { display : inline-block ; padding : 3 px 10 px ; border-radius : 999 px ;
69 font-size : 12 px ; font-weight : 600 ; }
70 .lvl-1 { background : #3a1f24 ; color : #f87171 ; }
71 .lvl-2 { background : #3b2c1d ; color : #fbbf24 ; }
72 .lvl-3 { background : #2c3119 ; color : #d3e85e ; }
73 .lvl-4 { background : #1d3325 ; color : #4ade80 ; }
74 .lvl-5 { background : #1c2c3d ; color : #6ea8ff ; }
75 .bar { height : 8 px ; background : var ( --panel-2 ); border-radius : 4 px ; overflow : hidden ; }
76 .bar > span { display : block ; height : 100 % ; background : var ( --accent ); }
77 .bar.good > span { background : var ( --good ); }
78 .bar.warn > span { background : var ( --warn ); }
79 .bar.bad > span { background : var ( --bad ); }
80 table { width : 100 % ; border-collapse : collapse ; }
81 th , td { text-align : left ; padding : 8 px 10 px ; border-bottom : 1 px solid var ( --border ); font-size : 13 px ; }
82 th { color : var ( --muted ); font-weight : 500 ; text-transform : uppercase ; font-size : 11 px ; letter-spacing : .8 px ; }
83 code { background : #0a0c11 ; padding : 1 px 6 px ; border-radius : 4 px ; }
84 h2 { font-size : 14 px ; color : var ( --muted ); text-transform : uppercase ; letter-spacing : .8 px ; margin : 0 0 12 px ; }
85 .dot { width : 8 px ; height : 8 px ; border-radius : 50 % ; display : inline-block ; }
86 .dot.good { background : var ( --good ); } .dot.warn { background : var ( --warn ); } .dot.bad { background : var ( --bad ); }
87 footer { color : var ( --muted ); font-size : 12 px ; text-align : center ; padding : 20 px ; }
88
89 /* Pillar cards */
90 .pillar { background : var ( --panel-2 ); border : 1 px solid var ( --border );
91 border-radius : 8 px ; padding : 14 px 16 px ; }
92 .pillar h3 { margin : 0 0 6 px ; font-size : 15 px ; display : flex ; align-items : center ; gap : 10 px ; flex-wrap : wrap ; }
93 .pillar .why { color : var ( --muted ); font-size : 13 px ; margin : 8 px 0 0 ; }
94 .pillar .what { font-size : 13 px ; margin : 6 px 0 0 ; }
95 .pillar .rec { font-size : 13 px ; margin : 8 px 0 0 ; }
96 .rel { font-size : 10 px ; padding : 2 px 8 px ; border-radius : 999 px ; text-transform : uppercase ; letter-spacing : .6 px ; font-weight : 600 ; }
97 .rel.high { background : #1c2c3d ; color : #6ea8ff ; }
98 .rel.medium { background : #2c3119 ; color : #d3e85e ; }
99 .rel.low { background : #262c3a ; color : #8a93a6 ; }
100 </ style >
101 </ head >
102 < body >
103 < header >
104 < h1 >AI Readiness Report</ h1 >
105 < div class = "meta" >
106 < strong >{{repoName}}</ strong > · Assessed {{date}} ·
107 < span class = "badge lvl-{{level}}" >L{{level}} — {{levelName}}</ span > ·
108 Overall < strong >{{overallPct}}%</ strong > · Grade < strong >{{grade}}</ strong >
109 <!-- if a policy is active, append: · Policy <code>{{policyName}}</code> -->
110 </ div >
111 </ header >
112
113 < main >
114
115 <!-- 1. What is AI Readiness? -->
116 < section class = "panel" >
117 < h2 >What is AI Readiness?</ h2 >
118 < p >AI coding agents are only as effective as the context they receive. AgentRC measures how AI-ready a repo is across < strong >9 pillars</ strong > in two categories — Repo Health and AI Setup — and maps the result to a < strong >5-level maturity model</ strong >. This report is the < em >Measure</ em > step in AgentRC's < em >Measure → Generate → Maintain</ em > loop.</ p >
119 < p style = "color:var(--muted);font-size:13px;margin-top:8px" >Each pillar carries an < strong >AI relevance</ strong > rating (High / Medium / Low) so you can tell at a glance which gaps most directly affect Copilot's output and which are general engineering hygiene.</ p >
120 </ section >
121
122 <!-- 2. KPIs -->
123 < section class = "grid cols-3" >
124 < div class = "panel kpi" >< span class = "lbl" >Maturity</ span >< div class = "num" >< span class = "badge lvl-{{level}}" >L{{level}} — {{levelName}}</ span ></ div ></ div >
125 < div class = "panel kpi" >< span class = "lbl" >Overall Score</ span >< div class = "num" >{{overallPct}}%</ div >< div style = "color:var(--muted);font-size:12px" >Grade {{grade}}</ div ></ div >
126 < div class = "panel kpi" >< span class = "lbl" >Pass rate</ span >< div class = "num" >{{passRate}}</ div >< div style = "color:var(--muted);font-size:12px" >Threshold {{threshold}}</ div ></ div >
127 </ section >
128
129 <!-- 3. Maturity progression -->
130 < section class = "panel" >
131 < h2 >Maturity Progression</ h2 >
132 < table >
133 < thead >< tr >< th >Level</ th >< th >Name</ th >< th >Status</ th ></ tr ></ thead >
134 < tbody >
135 <!-- Render levels 5 → 1. Mark the current level with "◼ You are here". Example row:
136 <tr><td>L3</td><td>Standardized</td><td>◼ You are here</td></tr>
137 -->
138 </ tbody >
139 </ table >
140 </ section >
141
142 <!-- 4. Active policy (omit this section entirely when no policy is active) -->
143 < section class = "panel" >
144 < h2 >Active Policy</ h2 >
145 < p >< code >{{policyName}}</ code > — {{policySummary}}</ p >
146 </ section >
147
148 <!-- 5. Repo Health Pillars -->
149 < section class = "panel" >
150 < h2 >Repo Health Breakdown</ h2 >
151 < div class = "grid cols-2" >
152 <!--
153 Repeat one .pillar block per Repo Health pillar (8 pillars):
154 Style, Build, Testing, Docs, Dev Environment, Code Quality, Observability, Security.
155
156 <div class="pillar">
157 <h3>
158 <span class="dot {{pillarStatus}}"></span>
159 {{pillarName}}
160 <span class="rel {{pillarRelevance}}">AI relevance: {{pillarRelevance}}</span>
161 <span style="margin-left:auto;color:var(--muted);font-size:13px">{{pillarScore}}%</span>
162 </h3>
163 <div class="bar {{pillarStatus}}"><span style="width:{{pillarScore}}%"></span></div>
164 <p class="what"><strong>What it measures:</strong> {{pillarWhat}}</p>
165 <p class="why"><strong>Why it matters for AI:</strong> {{pillarWhyAi}}</p>
166 <p class="rec"><strong>Current state:</strong> {{pillarCurrent}}</p>
167 <p class="rec"><strong>Recommendation:</strong> {{pillarRecommendation}}</p>
168 </div>
169 -->
170 </ div >
171 </ section >
172
173 <!-- 6. AI Setup Pillars -->
174 < section class = "panel" >
175 < h2 >AI Setup Breakdown</ h2 >
176 < div class = "grid cols-2" >
177 <!-- AI Tooling pillar block — same structure as above, AI relevance is always "high". -->
178 </ div >
179 </ section >
180
181 <!-- 7. Extras -->
182 < section class = "panel" >
183 < h2 >Extras (informational, do not affect score)</ h2 >
184 < table >
185 < thead >< tr >< th ></ th >< th >Extra</ th >< th >Status</ th ></ tr ></ thead >
186 < tbody >
187 <!-- agents-doc, pr-template, pre-commit, architecture-doc rows. Use ✅ or ◻. -->
188 </ tbody >
189 </ table >
190 </ section >
191
192 <!-- 8. Prioritised Remediation Plan -->
193 < section class = "panel" >
194 < h2 >Prioritised Remediation Plan</ h2 >
195 < h3 style = "color:var(--bad)" >🔴 Fix First (high impact / low effort)</ h3 >
196 < table >< thead >< tr >< th >#</ th >< th >Finding</ th >< th >File / config</ th >< th >Why it matters</ th ></ tr ></ thead >< tbody > <!-- rows --> </ tbody ></ table >
197 < h3 style = "color:var(--warn)" >🟡 Fix Next (medium impact / low effort)</ h3 >
198 < table >< thead >< tr >< th >#</ th >< th >Finding</ th >< th >File / config</ th >< th >Why</ th ></ tr ></ thead >< tbody > <!-- rows --> </ tbody ></ table >
199 < h3 style = "color:var(--accent)" >🔵 Plan (medium impact / medium effort)</ h3 >
200 < table >< thead >< tr >< th >#</ th >< th >Finding</ th >< th >File / config</ th >< th >Why</ th ></ tr ></ thead >< tbody > <!-- rows --> </ tbody ></ table >
201 </ section >
202
203 <!-- 9. Next steps -->
204 < section class = "panel" >
205 < h2 >Next Steps</ h2 >
206 < ol >
207 < li >Generate or refresh instructions: < code >agentrc instructions --output .github/copilot-instructions.md</ code > (or use the < code >generate-instructions</ code > skill).</ li >
208 < li >Address each item under < strong >🔴 Fix First</ strong >; re-run this report to confirm score improvement.</ li >
209 < li >Codify org standards via a JSON policy (< code >strict.json</ code >, < code >ai-only.json</ code >, …) and re-run with < code >--policy</ code >.</ li >
210 < li >Wire < code >agentrc readiness --fail-level < n > </ code > into CI to prevent regressions.</ li >
211 </ ol >
212 </ section >
213
214 <!-- 10. Raw data -->
215 < details class = "panel" >
216 < summary style = "cursor:pointer;color:var(--muted)" >Raw AgentRC JSON</ summary >
217 < pre style = "overflow:auto;font-size:11px;color:#b8c0d2" >{{rawJsonPretty}}</ pre >
218 </ details >
219 < script type = "application/json" id = "raw-data" >{{rawJsonCompact}}</ script >
220 </ main >
221
222 < footer >
223 Generated by < a href = "https://github.com/github/awesome-copilot/tree/main/plugins/acreadiness-cockpit" >acreadiness-cockpit</ a >
224 · powered by < a href = "https://github.com/microsoft/agentrc" >microsoft/agentrc</ a >.
225 </ footer >
226 </ body >
227 </ html >