Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified docs/assets/social-preview.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions docs/assets/social-preview.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion docs/figures/family-dark.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion docs/figures/family-light.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
17 changes: 9 additions & 8 deletions docs/figures/make_matrix.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"""Render agentseam's capability matrix: 16 agents x 12 events, graded from src/agentseam/matrix.py.
"""Render agentseam's capability matrix: 18 agents x 12 events, graded from src/agentseam/matrix.py.

Run from this directory:

Expand Down Expand Up @@ -40,7 +40,7 @@

GRID_X0 = MARGIN_L + LABEL_W
GRID_Y0 = TITLE_H + HEADER_H
GRID_H = 16 * CELL_H
GRID_H = 18 * CELL_H
H = GRID_Y0 + GRID_H + LEGEND_H

#: Column order is a display choice (roughly lifecycle order); the set is not -- it is
Expand All @@ -64,7 +64,7 @@
assert set(EVENTS) == _actual_events, f"EVENTS list drifted from matrix.py: {_actual_events}"

AGENTS = matrix.agents() # sorted() -- the same order matrix.py itself considers canonical
assert len(AGENTS) == 16, f"expected 16 agents, matrix.py now has {len(AGENTS)}"
assert len(AGENTS) == 18, f"expected 18 agents, matrix.py now has {len(AGENTS)}"

#: Ordinal position each grade takes in the shared 5-step LEVELS ramp (index 4 = darkest =
#: strongest, matching the ENFORCEMENT ramp's own advisory-to-enforced direction). `none` is
Expand Down Expand Up @@ -95,7 +95,7 @@


def cell_grades():
"""{(agent, event): grade} for the full 16x12 grid, and a grade -> count tally."""
"""{(agent, event): grade} for the full 18x12 grid, and a grade -> count tally."""
grades = {}
counts = {g: 0 for g in GRADE_ORDER_DISPLAY}
for agent in AGENTS:
Expand All @@ -116,18 +116,19 @@ def render(t, name, grades, counts):
total = sum(counts.values())
present = [g for g in GRADE_ORDER_DISPLAY if counts[g] > 0]
desc = (
"Grid of 16 coding agents by 12 lifecycle events, shaded by the enforcement grade "
"Grid of 18 coding agents by 12 lifecycle events, shaded by the enforcement grade "
"agentseam can honestly claim at that surface. Of %d cells: %s. No agent is graded "
"enforced at any event -- eleven agents reach only best-effort at pre_tool, Cursor "
"alone reaches enforceable there, and aider, Copilot, Replit and Zed have no hook "
"surface at pre_tool at all." % (total, "; ".join("%d %s" % (counts[g], LABEL[g]) for g in present))
"alone reaches enforceable there, and aider, Copilot, Kilo Code, OpenCode, Replit "
"and Zed have nothing agentseam can gate at pre_tool."
% (total, "; ".join("%d %s" % (counts[g], LABEL[g]) for g in present))
)
svg = p.open_svg(W, H, t, "agentseam capability matrix", desc)
svg += p.text(MARGIN_L, 20, "What each agent can honestly do, by event", t["text"], 15, p.SANS, "600")
svg += p.text(
MARGIN_L,
36,
"16 agents × 12 events, graded from src/agentseam/matrix.py -- not one cell says “enforced”",
"18 agents × 12 events, graded from src/agentseam/matrix.py -- not one cell says “enforced”",
t["secondary"],
10.5,
)
Expand Down
2 changes: 1 addition & 1 deletion docs/figures/make_social.py
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ def build():
svg += p.text(
74,
500,
"16 agents × 12 events, verified from src/agentseam/matrix.py — not one cell claims more than its evidence.",
"18 agents × 12 events, verified from src/agentseam/matrix.py — not one cell claims more than its evidence.",
t["secondary"],
15,
)
Expand Down
Loading
Loading