agentic-scorecard 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENT_PROMPT.md +64 -0
- package/LICENSE +201 -0
- package/NOTICE +4 -0
- package/README.md +191 -0
- package/benchmark/mappings/nist-ai-rmf.md +22 -0
- package/benchmark/mappings/openssf-scorecard.md +13 -0
- package/benchmark/mappings/owasp-agentic.md +16 -0
- package/benchmark/v0.1/adapter-contract.md +22 -0
- package/benchmark/v0.1/benchmark.yaml +126 -0
- package/benchmark/v0.1/controls/context.yaml +43 -0
- package/benchmark/v0.1/controls/environment.yaml +74 -0
- package/benchmark/v0.1/controls/governance.yaml +53 -0
- package/benchmark/v0.1/controls/learning.yaml +40 -0
- package/benchmark/v0.1/controls/observability.yaml +54 -0
- package/benchmark/v0.1/controls/resilience.yaml +40 -0
- package/benchmark/v0.1/controls/security.yaml +64 -0
- package/benchmark/v0.1/controls/specification.yaml +42 -0
- package/benchmark/v0.1/controls/testing.yaml +42 -0
- package/benchmark/v0.1/controls/tooling.yaml +48 -0
- package/benchmark/v0.1/evidence-schema.json +28 -0
- package/benchmark/v0.1/report-schema.json +32 -0
- package/benchmark/v0.1/scoring-policy.md +59 -0
- package/dist/cli.js +592 -0
- package/package.json +74 -0
- package/templates/attestations.yaml +9 -0
- package/templates/baseline.csv +1 -0
- package/templates/remediation-plan.md +15 -0
- package/templates/security-preflight.md +18 -0
package/AGENT_PROMPT.md
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# Ask an AI coding agent to run the benchmark
|
|
2
|
+
|
|
3
|
+
These prompts are deliberately vendor-neutral. The agent needs terminal access to the repository and
|
|
4
|
+
permission to download the published npm package. The benchmark itself runs locally, invokes no
|
|
5
|
+
model, uploads no source, and makes no network calls after package installation.
|
|
6
|
+
|
|
7
|
+
## Recommended: first assessment
|
|
8
|
+
|
|
9
|
+
Copy and paste:
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
Assess this repository's readiness for AI-agent pull-request work.
|
|
13
|
+
|
|
14
|
+
From the repository root, run:
|
|
15
|
+
npx --yes agentic-scorecard@0.1.0 assess . --profile pr-creation --format markdown --output .agentic/reports/agentic-readiness-v0.1.0.md
|
|
16
|
+
|
|
17
|
+
Do not change product source code, configuration, policies, or tests. Do not create or mark manual
|
|
18
|
+
attestations as met. Read the generated report and tell me:
|
|
19
|
+
1. the score and highest passed readiness profile;
|
|
20
|
+
2. whether the pr-creation target passes;
|
|
21
|
+
3. each target-profile blocker and the evidence that was or was not found;
|
|
22
|
+
4. the five highest-value improvements in dependency order; and
|
|
23
|
+
5. any likely false positive, false negative, or organizational control that repository inspection
|
|
24
|
+
cannot prove.
|
|
25
|
+
|
|
26
|
+
Keep tool-verified and self-attested evidence clearly separated. Leave the generated report
|
|
27
|
+
uncommitted unless I explicitly ask you to commit it. If the command cannot run, explain the exact
|
|
28
|
+
blocker without changing the repository to work around it.
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Choose a different authority level
|
|
32
|
+
|
|
33
|
+
Replace `pr-creation` with exactly one of:
|
|
34
|
+
|
|
35
|
+
- `read-only-analysis` — inspect approved source and return advice;
|
|
36
|
+
- `planning` — draft plans and specifications;
|
|
37
|
+
- `local-implementation` — edit an isolated checkout and run local checks;
|
|
38
|
+
- `pr-creation` — create a branch and pull request while a human retains merge authority;
|
|
39
|
+
- `limited-autonomous-maintenance` — perform pre-approved low-risk maintenance within strict limits.
|
|
40
|
+
|
|
41
|
+
No benchmark profile grants production deployment authority.
|
|
42
|
+
|
|
43
|
+
## Guided remediation
|
|
44
|
+
|
|
45
|
+
Use this only after reviewing the first report:
|
|
46
|
+
|
|
47
|
+
```text
|
|
48
|
+
Read .agentic/reports/agentic-readiness-v0.1.0.md and create a remediation proposal for the failed
|
|
49
|
+
target-profile controls. Do not implement changes yet. Group recommendations into quick wins,
|
|
50
|
+
foundational engineering, and organizational evidence. For each recommendation include the ADRB
|
|
51
|
+
control ID, risk reduced, files or systems likely affected, accountable role, verification method,
|
|
52
|
+
dependencies, and an effort estimate. Identify claims requiring a human owner or access to external
|
|
53
|
+
systems; never invent an attestation. End by asking which recommendations I authorize you to
|
|
54
|
+
implement.
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Reassessment after approved improvements
|
|
58
|
+
|
|
59
|
+
```text
|
|
60
|
+
Re-run the pinned Agentic Development Readiness Benchmark v0.1.0 for the same readiness profile.
|
|
61
|
+
Compare the new report to the previous report control by control. Explain score changes using evidence,
|
|
62
|
+
not assumptions, and identify any regression or expired attestation. Do not overwrite the previous
|
|
63
|
+
report; add the current date to the new report filename.
|
|
64
|
+
```
|
package/LICENSE
ADDED
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
Apache License
|
|
2
|
+
Version 2.0, January 2004
|
|
3
|
+
http://www.apache.org/licenses/
|
|
4
|
+
|
|
5
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
6
|
+
|
|
7
|
+
1. Definitions.
|
|
8
|
+
|
|
9
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
|
10
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
|
11
|
+
|
|
12
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
|
13
|
+
the copyright owner that is granting the License.
|
|
14
|
+
|
|
15
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
|
16
|
+
other entities that control, are controlled by, or are under common
|
|
17
|
+
control with that entity. For the purposes of this definition,
|
|
18
|
+
"control" means (i) the power, direct or indirect, to cause the
|
|
19
|
+
direction or management of such entity, whether by contract or
|
|
20
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
21
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
22
|
+
|
|
23
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
|
24
|
+
exercising permissions granted by this License.
|
|
25
|
+
|
|
26
|
+
"Source" form shall mean the preferred form for making modifications,
|
|
27
|
+
including but not limited to software source code, documentation
|
|
28
|
+
source, and configuration files.
|
|
29
|
+
|
|
30
|
+
"Object" form shall mean any form resulting from mechanical
|
|
31
|
+
transformation or translation of a Source form, including but
|
|
32
|
+
not limited to compiled object code, generated documentation,
|
|
33
|
+
and conversions to other media types.
|
|
34
|
+
|
|
35
|
+
"Work" shall mean the work of authorship, whether in Source or
|
|
36
|
+
Object form, made available under the License, as indicated by a
|
|
37
|
+
copyright notice that is included in or attached to the work
|
|
38
|
+
(an example is provided in the Appendix below).
|
|
39
|
+
|
|
40
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
|
41
|
+
form, that is based on (or derived from) the Work and for which the
|
|
42
|
+
editorial revisions, annotations, elaborations, or other modifications
|
|
43
|
+
represent, as a whole, an original work of authorship. For the purposes
|
|
44
|
+
of this License, Derivative Works shall not include works that remain
|
|
45
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
|
46
|
+
the Work and Derivative Works thereof.
|
|
47
|
+
|
|
48
|
+
"Contribution" shall mean any work of authorship, including
|
|
49
|
+
the original version of the Work and any modifications or additions
|
|
50
|
+
to that Work or Derivative Works thereof, that is intentionally
|
|
51
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
52
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
|
53
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
|
54
|
+
means any form of electronic, verbal, or written communication sent
|
|
55
|
+
to the Licensor or its representatives, including but not limited to
|
|
56
|
+
communication on electronic mailing lists, source code control systems,
|
|
57
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
|
58
|
+
Licensor for the purpose of discussing and improving the Work, but
|
|
59
|
+
excluding communication that is conspicuously marked or otherwise
|
|
60
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
|
61
|
+
|
|
62
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
63
|
+
on behalf of whom a Contribution has been received by Licensor and
|
|
64
|
+
subsequently incorporated within the Work.
|
|
65
|
+
|
|
66
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
67
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
68
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
69
|
+
copyright license to reproduce, prepare Derivative Works of,
|
|
70
|
+
publicly display, publicly perform, sublicense, and distribute the
|
|
71
|
+
Work and such Derivative Works in Source or Object form.
|
|
72
|
+
|
|
73
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
|
74
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
75
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
76
|
+
(except as stated in this section) patent license to make, have made,
|
|
77
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
78
|
+
where such license applies only to those patent claims licensable
|
|
79
|
+
by such Contributor that are necessarily infringed by their
|
|
80
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
|
81
|
+
with the Work to which such Contribution(s) was submitted. If You
|
|
82
|
+
institute patent litigation against any entity (including a
|
|
83
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
84
|
+
or a Contribution incorporated within the Work constitutes direct
|
|
85
|
+
or contributory patent infringement, then any patent licenses
|
|
86
|
+
granted to You under this License for that Work shall terminate
|
|
87
|
+
as of the date such litigation is filed.
|
|
88
|
+
|
|
89
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
|
90
|
+
Work or Derivative Works thereof in any medium, with or without
|
|
91
|
+
modifications, and in Source or Object form, provided that You
|
|
92
|
+
meet the following conditions:
|
|
93
|
+
|
|
94
|
+
(a) You must give any other recipients of the Work or
|
|
95
|
+
Derivative Works a copy of this License; and
|
|
96
|
+
|
|
97
|
+
(b) You must cause any modified files to carry prominent notices
|
|
98
|
+
stating that You changed the files; and
|
|
99
|
+
|
|
100
|
+
(c) You must retain, in the Source form of any Derivative Works
|
|
101
|
+
that You distribute, all copyright, patent, trademark, and
|
|
102
|
+
attribution notices from the Source form of the Work,
|
|
103
|
+
excluding those notices that do not pertain to any part of
|
|
104
|
+
the Derivative Works; and
|
|
105
|
+
|
|
106
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
|
107
|
+
distribution, then any Derivative Works that You distribute must
|
|
108
|
+
include a readable copy of the attribution notices contained
|
|
109
|
+
within such NOTICE file, excluding those notices that do not
|
|
110
|
+
pertain to any part of the Derivative Works, in at least one
|
|
111
|
+
of the following places: within a NOTICE text file distributed
|
|
112
|
+
as part of the Derivative Works; within the Source form or
|
|
113
|
+
documentation, if provided along with the Derivative Works; or,
|
|
114
|
+
within a display generated by the Derivative Works, if and
|
|
115
|
+
wherever such third-party notices normally appear. The contents
|
|
116
|
+
of the NOTICE file are for informational purposes only and
|
|
117
|
+
do not modify the License. You may add Your own attribution
|
|
118
|
+
notices within Derivative Works that You distribute, alongside
|
|
119
|
+
or as an addendum to the NOTICE text from the Work, provided
|
|
120
|
+
that such additional attribution notices cannot be construed
|
|
121
|
+
as modifying the License.
|
|
122
|
+
|
|
123
|
+
You may add Your own copyright statement to Your modifications and
|
|
124
|
+
may provide additional or different license terms and conditions
|
|
125
|
+
for use, reproduction, or distribution of Your modifications, or
|
|
126
|
+
for any such Derivative Works as a whole, provided Your use,
|
|
127
|
+
reproduction, and distribution of the Work otherwise complies with
|
|
128
|
+
the conditions stated in this License.
|
|
129
|
+
|
|
130
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
131
|
+
any Contribution intentionally submitted for inclusion in the Work
|
|
132
|
+
by You to the Licensor shall be under the terms and conditions of
|
|
133
|
+
this License, without any additional terms or conditions.
|
|
134
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
|
135
|
+
the terms of any separate license agreement you may have executed
|
|
136
|
+
with Licensor regarding such Contributions.
|
|
137
|
+
|
|
138
|
+
6. Trademarks. This License does not grant permission to use the trade
|
|
139
|
+
names, trademarks, service marks, or product names of the Licensor,
|
|
140
|
+
except as required for reasonable and customary use in describing the
|
|
141
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
|
142
|
+
|
|
143
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
144
|
+
agreed to in writing, Licensor provides the Work (and each
|
|
145
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
146
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
147
|
+
implied, including, without limitation, any warranties or conditions
|
|
148
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
149
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
150
|
+
appropriateness of using or redistributing the Work and assume any
|
|
151
|
+
risks associated with Your exercise of permissions under this License.
|
|
152
|
+
|
|
153
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
|
154
|
+
whether in tort (including negligence), contract, or otherwise,
|
|
155
|
+
unless required by applicable law (such as deliberate and grossly
|
|
156
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
|
157
|
+
liable to You for damages, including any direct, indirect, special,
|
|
158
|
+
incidental, or consequential damages of any character arising as a
|
|
159
|
+
result of this License or out of the use or inability to use the
|
|
160
|
+
Work (including but not limited to damages for loss of goodwill,
|
|
161
|
+
work stoppage, computer failure or malfunction, or any and all
|
|
162
|
+
other commercial damages or losses), even if such Contributor
|
|
163
|
+
has been advised of the possibility of such damages.
|
|
164
|
+
|
|
165
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
|
166
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
|
167
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
168
|
+
or other liability obligations and/or rights consistent with this
|
|
169
|
+
License. However, in accepting such obligations, You may act only
|
|
170
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
|
171
|
+
of any other Contributor, and only if You agree to indemnify,
|
|
172
|
+
defend, and hold each Contributor harmless for any liability
|
|
173
|
+
incurred by, or claims asserted against, such Contributor by reason
|
|
174
|
+
of your accepting any such warranty or additional liability.
|
|
175
|
+
|
|
176
|
+
END OF TERMS AND CONDITIONS
|
|
177
|
+
|
|
178
|
+
APPENDIX: How to apply the Apache License to your work.
|
|
179
|
+
|
|
180
|
+
To apply the Apache License to your work, attach the following
|
|
181
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
|
182
|
+
replaced with your own identifying information. (Don't include
|
|
183
|
+
the brackets!) The text should be enclosed in the appropriate
|
|
184
|
+
comment syntax for the file format. We also recommend that a
|
|
185
|
+
file or class name and description of purpose be included on the
|
|
186
|
+
same "printed page" as the copyright notice for easier
|
|
187
|
+
identification within third-party archives.
|
|
188
|
+
|
|
189
|
+
Copyright [yyyy] [name of copyright owner]
|
|
190
|
+
|
|
191
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
192
|
+
you may not use this file except in compliance with the License.
|
|
193
|
+
You may obtain a copy of the License at
|
|
194
|
+
|
|
195
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
196
|
+
|
|
197
|
+
Unless required by applicable law or agreed to in writing, software
|
|
198
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
199
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
200
|
+
See the License for the specific language governing permissions and
|
|
201
|
+
limitations under the License.
|
package/NOTICE
ADDED
package/README.md
ADDED
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
# Agentic Development Readiness Benchmark
|
|
2
|
+
|
|
3
|
+
A vendor-neutral, evidence-backed benchmark for the engineering harness around AI coding agents.
|
|
4
|
+
It helps an organization answer a practical question:
|
|
5
|
+
|
|
6
|
+
> What work may our agents safely perform today, what evidence supports that decision, and what
|
|
7
|
+
> should we improve next?
|
|
8
|
+
|
|
9
|
+
The benchmark measures the harness, not the model brand. It assesses ten dimensions across four
|
|
10
|
+
maturity levels and applies non-compensating floors to five autonomy profiles. A high total score
|
|
11
|
+
cannot hide a critical security, testing, governance, or recovery gap.
|
|
12
|
+
|
|
13
|
+
This repository is an early **v0.1 reference implementation** intended for public review and
|
|
14
|
+
piloting. It is not a certification standard.
|
|
15
|
+
|
|
16
|
+
## Ask your coding agent
|
|
17
|
+
|
|
18
|
+
You do not need to install or learn the CLI yourself. Paste this prompt into Codex, Claude Code,
|
|
19
|
+
GitHub Copilot, Cursor, or another coding agent that has terminal access to your repository:
|
|
20
|
+
|
|
21
|
+
> Assess this repository's readiness for AI-agent pull-request work. From the repository root, run
|
|
22
|
+
> `npx --yes agentic-scorecard@0.1.0 assess . --profile pr-creation --format markdown --output .agentic/reports/agentic-readiness-v0.1.0.md`.
|
|
23
|
+
> Do not change product source code or invent attestations. Read the resulting report and summarize
|
|
24
|
+
> the score, highest passed profile, whether `pr-creation` passes, target-profile blockers, and the
|
|
25
|
+
> five highest-value improvements. Clearly separate tool-verified evidence from self-attested
|
|
26
|
+
> evidence and flag likely false positives or missing organizational evidence. Leave the report
|
|
27
|
+
> uncommitted unless I ask you to commit it.
|
|
28
|
+
|
|
29
|
+
That is the recommended first assessment. The agent downloads the pinned benchmark package, runs the
|
|
30
|
+
read-only local collector, and explains the results. For alternate authority levels or a guided
|
|
31
|
+
remediation session, use the prompts in [AGENT_PROMPT.md](AGENT_PROMPT.md).
|
|
32
|
+
|
|
33
|
+
## Quick start
|
|
34
|
+
|
|
35
|
+
### Installation and prerequisites
|
|
36
|
+
|
|
37
|
+
A supported Node.js LTS release (20.19+, 22.13+, or 24+) is required. Assessment is local,
|
|
38
|
+
read-only, and offline by default.
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
npx agentic-scorecard@0.1.0 assess /path/to/repository \
|
|
42
|
+
--profile pr-creation \
|
|
43
|
+
--format markdown \
|
|
44
|
+
--output agentic-readiness.md
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
To record controls that repository inspection cannot prove:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
npx agentic-scorecard@0.1.0 init /path/to/repository
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Complete `.agentic/attestations.yaml` with owners and links to durable evidence, then assess again.
|
|
54
|
+
Attested evidence remains visibly distinct from tool-verified evidence in every report.
|
|
55
|
+
|
|
56
|
+
For development from this checkout:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
npm ci
|
|
60
|
+
npm run check
|
|
61
|
+
npm run dev -- assess tests/fixtures/mature --profile pr-creation
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## What it assesses
|
|
65
|
+
|
|
66
|
+
| Dimension | Core question |
|
|
67
|
+
| ---------------------------------- | --------------------------------------------------------------- |
|
|
68
|
+
| Context and knowledge | Can an agent discover the right rules and architecture? |
|
|
69
|
+
| Reproducible environment | Can it establish a faithful, clean development environment? |
|
|
70
|
+
| Specification and planning | Is the requested outcome explicit and testable? |
|
|
71
|
+
| Tooling and interfaces | Are tools scoped, validated, observable, and fail-safe? |
|
|
72
|
+
| Security and data governance | Are data, credentials, untrusted content, and autonomy bounded? |
|
|
73
|
+
| Verification and testing | Can changes be verified with trustworthy signals? |
|
|
74
|
+
| Review and change governance | Are accountability, review, and merge authority explicit? |
|
|
75
|
+
| Learning and knowledge maintenance | Do corrections become durable, maintained guidance? |
|
|
76
|
+
| Outcome observability | Can runs be evaluated by task, risk, quality, time, and cost? |
|
|
77
|
+
| Failure containment and recovery | Can work stop safely and changes be reversed? |
|
|
78
|
+
|
|
79
|
+
Each dimension receives the highest **consecutive** maturity level whose controls are satisfied:
|
|
80
|
+
|
|
81
|
+
0. Absent
|
|
82
|
+
1. Ad hoc
|
|
83
|
+
2. Documented
|
|
84
|
+
3. Enforced
|
|
85
|
+
4. Measured and improving
|
|
86
|
+
|
|
87
|
+
Level 4 requires outcome evidence over time. A dashboard, policy, or tool merely existing cannot
|
|
88
|
+
earn measured maturity.
|
|
89
|
+
|
|
90
|
+
## Readiness profiles
|
|
91
|
+
|
|
92
|
+
Profiles describe increasing authority. They are safety floors, not labels of organizational
|
|
93
|
+
prestige.
|
|
94
|
+
|
|
95
|
+
| Profile | Intended authority |
|
|
96
|
+
| -------------------------------- | ---------------------------------------------------------------- |
|
|
97
|
+
| `read-only-analysis` | Inspect approved source and return advice; no mutation. |
|
|
98
|
+
| `planning` | Draft plans and specifications for human review. |
|
|
99
|
+
| `local-implementation` | Edit an isolated checkout and run approved local checks. |
|
|
100
|
+
| `pr-creation` | Create a branch and PR; a human retains merge authority. |
|
|
101
|
+
| `limited-autonomous-maintenance` | Perform pre-approved, low-risk maintenance within strict limits. |
|
|
102
|
+
|
|
103
|
+
No profile grants production deployment authority. Organizations should evaluate production access
|
|
104
|
+
through a separate, system-specific safety case.
|
|
105
|
+
|
|
106
|
+
The exact floors live in
|
|
107
|
+
[`benchmark/v0.1/benchmark.yaml`](benchmark/v0.1/benchmark.yaml) and their rationale in
|
|
108
|
+
[`benchmark/v0.1/scoring-policy.md`](benchmark/v0.1/scoring-policy.md).
|
|
109
|
+
|
|
110
|
+
## Evidence and trust labels
|
|
111
|
+
|
|
112
|
+
- **Verified:** a deterministic local collector found the configured repository evidence.
|
|
113
|
+
- **Attested:** an accountable owner supplied an evidence link or explanation. This may satisfy a
|
|
114
|
+
control, but it never becomes verified evidence.
|
|
115
|
+
- **Unmet/unknown:** evidence is absent, expired, contradictory, or still requires review.
|
|
116
|
+
- **Independently reviewed:** reserved for a future external review protocol; the CLI does not issue
|
|
117
|
+
this label.
|
|
118
|
+
|
|
119
|
+
Repository heuristics are intentionally explainable and conservative. They prove that an artifact
|
|
120
|
+
or term exists—not that a team consistently follows it. Manual claims make organizational controls
|
|
121
|
+
portable across GitHub, GitLab, Azure DevOps, internal systems, and different agent harnesses while
|
|
122
|
+
preserving provenance.
|
|
123
|
+
|
|
124
|
+
## Reports and CI
|
|
125
|
+
|
|
126
|
+
The CLI emits Markdown for people and stable JSON for automation:
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
agentic-scorecard assess . --format json --output .agentic/report.json
|
|
130
|
+
agentic-scorecard assess . --profile pr-creation --enforce
|
|
131
|
+
agentic-scorecard explain ADRB-SEC-003
|
|
132
|
+
agentic-scorecard validate
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
`--enforce` exits with code 2 when the target profile fails. Start by publishing a non-blocking
|
|
136
|
+
baseline; gate only after owners have reviewed false positives, accepted the versioned policy, and
|
|
137
|
+
funded the remediation plan. See
|
|
138
|
+
[`examples/github-actions-consumer.yml`](examples/github-actions-consumer.yml).
|
|
139
|
+
|
|
140
|
+
## Privacy and security
|
|
141
|
+
|
|
142
|
+
The default collector:
|
|
143
|
+
|
|
144
|
+
- makes no network calls and invokes no model;
|
|
145
|
+
- reads only the target checkout;
|
|
146
|
+
- ignores `.git`, dependency, build, and coverage directories;
|
|
147
|
+
- caps content-scanned files at 512 KB;
|
|
148
|
+
- reports file paths and match counts, never matching source snippets;
|
|
149
|
+
- writes nothing unless `--output` or `init` is explicitly requested.
|
|
150
|
+
|
|
151
|
+
Do not place credentials, private prompts, source excerpts, or personal data in attestations. Link to
|
|
152
|
+
access-controlled evidence instead. Report suspected vulnerabilities through [SECURITY.md](SECURITY.md).
|
|
153
|
+
|
|
154
|
+
## Repository structure
|
|
155
|
+
|
|
156
|
+
```text
|
|
157
|
+
benchmark/v0.1/ immutable benchmark definition and controls
|
|
158
|
+
benchmark/mappings/ informative mappings to external frameworks
|
|
159
|
+
src/ reference CLI and local evidence collectors
|
|
160
|
+
templates/ adoption, preflight, attestation, and remediation templates
|
|
161
|
+
tests/fixtures/ transparent benchmark fixtures
|
|
162
|
+
rfcs/ proposed normative changes
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
Normative changes use an RFC and create a new benchmark version; published versions remain
|
|
166
|
+
immutable. See [GOVERNANCE.md](GOVERNANCE.md) and [CONTRIBUTING.md](CONTRIBUTING.md).
|
|
167
|
+
Maintainers should follow [NPM_PUBLISHING.md](NPM_PUBLISHING.md) for the one-time bootstrap and
|
|
168
|
+
OIDC-provenance release process.
|
|
169
|
+
|
|
170
|
+
## Recommended adoption sequence
|
|
171
|
+
|
|
172
|
+
1. Run a local baseline for the least-authoritative profile you actually need.
|
|
173
|
+
2. Review every result with security, platform, and representative delivery teams.
|
|
174
|
+
3. Supply owned attestations for controls that cannot be mechanically verified.
|
|
175
|
+
4. Publish the report internally with explicit limitations and benchmark version.
|
|
176
|
+
5. Fund the smallest improvements that close target-profile blockers.
|
|
177
|
+
6. Reassess on material harness changes and at least quarterly.
|
|
178
|
+
7. Add a non-blocking CI report; enforce only the agreed target profile after a pilot.
|
|
179
|
+
|
|
180
|
+
Never optimize to the number alone. Use the control evidence and outcome metrics to improve the
|
|
181
|
+
system, and keep exceptions narrow, owned, expiring, and visible.
|
|
182
|
+
|
|
183
|
+
## Status and roadmap
|
|
184
|
+
|
|
185
|
+
v0.1 includes the normative control catalog, local collectors, attestations, JSON/Markdown reports,
|
|
186
|
+
fixtures, and a CI example. Candidate next steps include SARIF/HTML reports, signed reports, a stable
|
|
187
|
+
adapter SDK, organization-level aggregation, statistically designed benchmark tasks, and an
|
|
188
|
+
independent-review protocol. These require public design review before becoming normative.
|
|
189
|
+
|
|
190
|
+
Apache-2.0 licensed. The benchmark is a community engineering tool, not legal, compliance, or
|
|
191
|
+
security advice.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Informative mapping: NIST AI RMF
|
|
2
|
+
|
|
3
|
+
This non-normative mapping helps organizations reuse governance evidence. It does not imply NIST
|
|
4
|
+
endorsement or AI RMF conformity. Review against the current official publications before use:
|
|
5
|
+
[NIST AI Risk Management Framework](https://www.nist.gov/itl/ai-risk-management-framework) and
|
|
6
|
+
[NIST AI 600-1, Generative AI Profile](https://doi.org/10.6028/NIST.AI.600-1).
|
|
7
|
+
|
|
8
|
+
| ADRB dimension | Closest AI RMF functions | Relationship |
|
|
9
|
+
| -------------- | ---------------------------- | ------------------------------------------------------------------------------ |
|
|
10
|
+
| Context | Map, Govern | Local context establishes intended use, constraints, ownership, and knowledge. |
|
|
11
|
+
| Environment | Map, Measure | Reproducibility supports faithful evaluation and lifecycle control. |
|
|
12
|
+
| Specification | Map, Govern | Objectives, affected actors, requirements, and non-goals define the use case. |
|
|
13
|
+
| Tooling | Govern, Measure, Manage | Tool authority and validation are risk controls around the AI system. |
|
|
14
|
+
| Security | Govern, Map, Measure, Manage | Data, access, misuse, third-party, and adversarial risks span all functions. |
|
|
15
|
+
| Testing | Measure, Manage | Verification produces evidence and drives response to identified risk. |
|
|
16
|
+
| Governance | Govern, Manage | Accountability, review, policy, and exception handling govern change. |
|
|
17
|
+
| Learning | Govern, Manage | Corrections and incidents update organizational knowledge and controls. |
|
|
18
|
+
| Observability | Measure, Govern | Outcome records support monitoring, transparency, and accountable decisions. |
|
|
19
|
+
| Resilience | Manage, Measure | Containment, recovery, and exercises reduce and evaluate impact. |
|
|
20
|
+
|
|
21
|
+
ADRB is repository- and harness-focused. It does not replace broader organizational, human-rights,
|
|
22
|
+
legal, societal, or model-risk work required by the AI RMF.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Informative mapping: OpenSSF Scorecard
|
|
2
|
+
|
|
3
|
+
[OpenSSF Scorecard](https://scorecard.dev/) assesses open-source software supply-chain practices.
|
|
4
|
+
ADRB assesses readiness to delegate engineering work to agents. The projects are complementary, not
|
|
5
|
+
substitutable.
|
|
6
|
+
|
|
7
|
+
Scorecard evidence around branch protection, code review, dangerous workflows, pinned dependencies,
|
|
8
|
+
token permissions, vulnerabilities, and security policy may support ADRB environment, tooling,
|
|
9
|
+
security, testing, governance, and resilience controls. ADRB additionally needs agent-specific
|
|
10
|
+
context, authority boundaries, specifications, run outcomes, learning loops, and stop/recovery design.
|
|
11
|
+
|
|
12
|
+
Future adapters should consume Scorecard's versioned machine output rather than recreate its checks,
|
|
13
|
+
while preserving source version, collection time, and confidence.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Informative mapping: OWASP agentic security work
|
|
2
|
+
|
|
3
|
+
This mapping is non-normative and does not imply OWASP endorsement. Agentic threat catalogs evolve;
|
|
4
|
+
review the current [OWASP GenAI Security Project](https://genai.owasp.org/) material before use.
|
|
5
|
+
|
|
6
|
+
| ADRB area | Threat themes addressed | Important residual work |
|
|
7
|
+
| ------------- | -------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
|
|
8
|
+
| Context | Instruction provenance, conflicting guidance, poisoned knowledge | Content trust and provenance need system-specific analysis. |
|
|
9
|
+
| Tooling | Excessive agency, unsafe tool use, confused-deputy behavior | Every tool and downstream system needs threat modeling and authorization tests. |
|
|
10
|
+
| Security | Prompt injection, data leakage, credential abuse, supply chain | ADRB presence checks are not penetration tests or secure-design review. |
|
|
11
|
+
| Governance | Unapproved actions, unclear accountability, policy bypass | Organization-specific approval and legal obligations remain. |
|
|
12
|
+
| Observability | Repudiation, hidden behavior, undetected misuse | Logs require integrity, access, retention, privacy, and alerting design. |
|
|
13
|
+
| Resilience | Cascading failures, loops, resource exhaustion, irreversible actions | Runtime circuit breakers and recovery must be tested in the real harness. |
|
|
14
|
+
|
|
15
|
+
Use ADRB to identify whether controls are present and improving, then use threat modeling to evaluate
|
|
16
|
+
whether those controls address the actual agents, tools, identities, data, and impact paths.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Evidence adapter contract
|
|
2
|
+
|
|
3
|
+
v0.1 ships only local, deterministic collectors. This document defines the boundary for future
|
|
4
|
+
vendor or organization adapters without making those systems normative.
|
|
5
|
+
|
|
6
|
+
An adapter should return a claim for one control containing:
|
|
7
|
+
|
|
8
|
+
- benchmark version and control ID;
|
|
9
|
+
- `met`, `not_met`, `unknown`, or an allowed `not_applicable` status;
|
|
10
|
+
- collector name and version;
|
|
11
|
+
- collection timestamp and evidence freshness or expiry;
|
|
12
|
+
- privacy-safe references, never credentials or raw sensitive content;
|
|
13
|
+
- a deterministic summary of how the claim was derived;
|
|
14
|
+
- an error state distinguishable from a negative result.
|
|
15
|
+
|
|
16
|
+
Adapters must be read-only by default, use least-privileged credentials, time out, fail closed, and
|
|
17
|
+
make no unrelated mutations. Networked evidence is untrusted input. Its content cannot change tool
|
|
18
|
+
authority or benchmark policy.
|
|
19
|
+
|
|
20
|
+
Adapter claims remain `attested` until a future signed adapter protocol defines identity,
|
|
21
|
+
authorization, schema validation, freshness, and independent conformance tests. Tool names and
|
|
22
|
+
vendor paths belong in adapters and examples, not normative control outcomes.
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
id: agentic-development-readiness
|
|
2
|
+
version: 0.1.0
|
|
3
|
+
title: Agentic Development Readiness Benchmark
|
|
4
|
+
description: >-
|
|
5
|
+
A vendor-neutral, evidence-backed assessment of the engineering harness that surrounds AI agents.
|
|
6
|
+
It measures whether a repository can safely support increasing levels of delegated software work.
|
|
7
|
+
|
|
8
|
+
maturity_levels:
|
|
9
|
+
0: Absent
|
|
10
|
+
1: Ad hoc
|
|
11
|
+
2: Documented
|
|
12
|
+
3: Enforced
|
|
13
|
+
4: Measured and improving
|
|
14
|
+
|
|
15
|
+
dimensions:
|
|
16
|
+
- id: context
|
|
17
|
+
title: Context and knowledge
|
|
18
|
+
description: Agents can discover authoritative, scoped, current instructions without guesswork.
|
|
19
|
+
- id: environment
|
|
20
|
+
title: Reproducible environment
|
|
21
|
+
description: Agents can establish and verify a faithful development environment.
|
|
22
|
+
- id: specification
|
|
23
|
+
title: Specification and planning
|
|
24
|
+
description: Work starts from testable outcomes, constraints, and explicit acceptance criteria.
|
|
25
|
+
- id: tooling
|
|
26
|
+
title: Tooling and interfaces
|
|
27
|
+
description: Agent tools are discoverable, least-privileged, observable, and fail safely.
|
|
28
|
+
- id: security
|
|
29
|
+
title: Security and data governance
|
|
30
|
+
description: Credentials, data, autonomy, and untrusted content have explicit boundaries.
|
|
31
|
+
- id: testing
|
|
32
|
+
title: Verification and testing
|
|
33
|
+
description: Changes are checked at the right layers with trustworthy, reproducible signals.
|
|
34
|
+
- id: governance
|
|
35
|
+
title: Review and change governance
|
|
36
|
+
description: Human accountability, change scope, and merge authority remain explicit.
|
|
37
|
+
- id: learning
|
|
38
|
+
title: Learning and knowledge maintenance
|
|
39
|
+
description: Corrections compound into maintained instructions instead of being repeatedly rediscovered.
|
|
40
|
+
- id: observability
|
|
41
|
+
title: Outcome observability
|
|
42
|
+
description: Runs and outcomes can be evaluated by task class, risk, cost, and quality.
|
|
43
|
+
- id: resilience
|
|
44
|
+
title: Failure containment and recovery
|
|
45
|
+
description: Agent failures are bounded, reversible, diagnosed, and rehearsed.
|
|
46
|
+
|
|
47
|
+
readiness_profiles:
|
|
48
|
+
- id: read-only-analysis
|
|
49
|
+
title: Read-only analysis
|
|
50
|
+
description: Agent may inspect approved repository content and return advice, without mutations.
|
|
51
|
+
floors:
|
|
52
|
+
context: 1
|
|
53
|
+
environment: 0
|
|
54
|
+
specification: 0
|
|
55
|
+
tooling: 0
|
|
56
|
+
security: 1
|
|
57
|
+
testing: 0
|
|
58
|
+
governance: 0
|
|
59
|
+
learning: 0
|
|
60
|
+
observability: 0
|
|
61
|
+
resilience: 0
|
|
62
|
+
- id: planning
|
|
63
|
+
title: Planning and specification
|
|
64
|
+
description: Agent may draft plans, specifications, and proposed changes for human review.
|
|
65
|
+
floors:
|
|
66
|
+
context: 2
|
|
67
|
+
environment: 0
|
|
68
|
+
specification: 1
|
|
69
|
+
tooling: 1
|
|
70
|
+
security: 1
|
|
71
|
+
testing: 0
|
|
72
|
+
governance: 1
|
|
73
|
+
learning: 0
|
|
74
|
+
observability: 0
|
|
75
|
+
resilience: 0
|
|
76
|
+
- id: local-implementation
|
|
77
|
+
title: Local implementation
|
|
78
|
+
description: Agent may edit an isolated checkout and run approved local verification.
|
|
79
|
+
floors:
|
|
80
|
+
context: 2
|
|
81
|
+
environment: 2
|
|
82
|
+
specification: 2
|
|
83
|
+
tooling: 2
|
|
84
|
+
security: 2
|
|
85
|
+
testing: 2
|
|
86
|
+
governance: 1
|
|
87
|
+
learning: 1
|
|
88
|
+
observability: 1
|
|
89
|
+
resilience: 1
|
|
90
|
+
- id: pr-creation
|
|
91
|
+
title: Pull request creation
|
|
92
|
+
description: Agent may create a branch and propose a pull request; a human retains merge authority.
|
|
93
|
+
floors:
|
|
94
|
+
context: 2
|
|
95
|
+
environment: 2
|
|
96
|
+
specification: 2
|
|
97
|
+
tooling: 2
|
|
98
|
+
security: 2
|
|
99
|
+
testing: 2
|
|
100
|
+
governance: 2
|
|
101
|
+
learning: 1
|
|
102
|
+
observability: 1
|
|
103
|
+
resilience: 2
|
|
104
|
+
- id: limited-autonomous-maintenance
|
|
105
|
+
title: Limited autonomous maintenance
|
|
106
|
+
description: >-
|
|
107
|
+
Agent may complete pre-approved, low-risk maintenance within strict scope, budget, and stop
|
|
108
|
+
conditions. This profile never grants production deployment authority.
|
|
109
|
+
floors:
|
|
110
|
+
context: 3
|
|
111
|
+
environment: 3
|
|
112
|
+
specification: 3
|
|
113
|
+
tooling: 3
|
|
114
|
+
security: 3
|
|
115
|
+
testing: 3
|
|
116
|
+
governance: 3
|
|
117
|
+
learning: 3
|
|
118
|
+
observability: 3
|
|
119
|
+
resilience: 3
|
|
120
|
+
|
|
121
|
+
scoring:
|
|
122
|
+
dimension_method: consecutive-levels
|
|
123
|
+
overall_method: sum
|
|
124
|
+
maximum_score: 40
|
|
125
|
+
readiness_method: non-compensating-floors
|
|
126
|
+
attestation_counts_as_verified: false
|