Tools Colophon

This page documents the creation of the tools on niclasedge.github.io/tools, including links to the Claude conversations used to build them.

image-analysis.html

a70297f August 16, 2026 21:17
chore(just): add grouped justfile with test and stats for opsdesk

Das Repo hatte kein justfile. Neu angelegt mit 11 Rezepten, jedes mit
[doc()] und [group()], damit opsdesk sie ueber `just --dump --dump-format
json` als Aktionsspalte rendern kann. Gruppen in Contract-Reihenfolge:
run, check, build, setup, opsdesk.

Als Sammelrepo bildet das Root-justfile nur die uebergreifenden Ablaeufe ab;
die Unterwerkzeuge sind Parameter (`just agent diagram|health|vercel`),
keine eigenen Rezepte.

`just test` — es gibt im ganzen Repo KEINE Testdateien (kein test_*.py,
kein *.test.ts). Das Rezept legt keine an, sondern ruft aus, was es gibt:
- Python: compileall ueber alle 22 getrackten .py — gruen
- TypeScript: tsc --noEmit in agents-vercel-sdk — ROT, siehe unten

`just stats` liefert 6 KPIs nach opsdesk Spec 15 (aktuelle Werte):
agents 4 · tools 13 · python_lines 8328 · ts_lines 1932 ·
tests 0 (status=warn) · commits_30d 3

Python laeuft durchgehend ueber `uv run --with-requirements`, Node ueber
pnpm. `uv pip` ist bewusst nicht benutzt (Legacy-Interface). Dazu die
pnpm-native Lockfile, damit `just setup`/`just build` reproduzierbar sind.

VORBESTEHEND ROT (nicht von mir verursacht, nicht repariert):
- tsc --noEmit: 2x TS2322 in agents-vercel-sdk/src/agents.ts:200 und :252
(Tool<...> nicht auf Tool<ToolParameters, unknown> zuweisbar). Belegt
vorbestehend: package-lock.json und pnpm loesen identisch auf
(ai@4.3.19, zod@3.25.76, typescript@5.9.3) — der Fehler haengt nicht am
Paketmanager-Wechsel. Damit sind `just test` und `just build` rot.
- ruff check: 62 Findings (44 autofixbar). `just lint` ist rot.
Nicht gefixt, weil das eine reine Formatierungs-/Aufraeumaenderung ohne
Bezug zu diesem Ticket waere.

`just hub` ruft agent_hub/app.py direkt statt ueber
start-agent-frontend.sh: das Skript startet ein blankes `python3` ohne
Abhaengigkeiten und reicht seinen Port-Parameter nie an die App weiter —
der Port ist in app.py fest auf 7860 verdrahtet. Das Skript bleibt
unveraendert liegen.

base64-encoder.html

a70297f August 16, 2026 21:17
chore(just): add grouped justfile with test and stats for opsdesk

Das Repo hatte kein justfile. Neu angelegt mit 11 Rezepten, jedes mit
[doc()] und [group()], damit opsdesk sie ueber `just --dump --dump-format
json` als Aktionsspalte rendern kann. Gruppen in Contract-Reihenfolge:
run, check, build, setup, opsdesk.

Als Sammelrepo bildet das Root-justfile nur die uebergreifenden Ablaeufe ab;
die Unterwerkzeuge sind Parameter (`just agent diagram|health|vercel`),
keine eigenen Rezepte.

`just test` — es gibt im ganzen Repo KEINE Testdateien (kein test_*.py,
kein *.test.ts). Das Rezept legt keine an, sondern ruft aus, was es gibt:
- Python: compileall ueber alle 22 getrackten .py — gruen
- TypeScript: tsc --noEmit in agents-vercel-sdk — ROT, siehe unten

`just stats` liefert 6 KPIs nach opsdesk Spec 15 (aktuelle Werte):
agents 4 · tools 13 · python_lines 8328 · ts_lines 1932 ·
tests 0 (status=warn) · commits_30d 3

Python laeuft durchgehend ueber `uv run --with-requirements`, Node ueber
pnpm. `uv pip` ist bewusst nicht benutzt (Legacy-Interface). Dazu die
pnpm-native Lockfile, damit `just setup`/`just build` reproduzierbar sind.

VORBESTEHEND ROT (nicht von mir verursacht, nicht repariert):
- tsc --noEmit: 2x TS2322 in agents-vercel-sdk/src/agents.ts:200 und :252
(Tool<...> nicht auf Tool<ToolParameters, unknown> zuweisbar). Belegt
vorbestehend: package-lock.json und pnpm loesen identisch auf
(ai@4.3.19, zod@3.25.76, typescript@5.9.3) — der Fehler haengt nicht am
Paketmanager-Wechsel. Damit sind `just test` und `just build` rot.
- ruff check: 62 Findings (44 autofixbar). `just lint` ist rot.
Nicht gefixt, weil das eine reine Formatierungs-/Aufraeumaenderung ohne
Bezug zu diesem Ticket waere.

`just hub` ruft agent_hub/app.py direkt statt ueber
start-agent-frontend.sh: das Skript startet ein blankes `python3` ohne
Abhaengigkeiten und reicht seinen Port-Parameter nie an die App weiter —
der Port ist in app.py fest auf 7860 verdrahtet. Das Skript bleibt
unveraendert liegen.

color-wheel.html

a70297f August 16, 2026 21:17
chore(just): add grouped justfile with test and stats for opsdesk

Das Repo hatte kein justfile. Neu angelegt mit 11 Rezepten, jedes mit
[doc()] und [group()], damit opsdesk sie ueber `just --dump --dump-format
json` als Aktionsspalte rendern kann. Gruppen in Contract-Reihenfolge:
run, check, build, setup, opsdesk.

Als Sammelrepo bildet das Root-justfile nur die uebergreifenden Ablaeufe ab;
die Unterwerkzeuge sind Parameter (`just agent diagram|health|vercel`),
keine eigenen Rezepte.

`just test` — es gibt im ganzen Repo KEINE Testdateien (kein test_*.py,
kein *.test.ts). Das Rezept legt keine an, sondern ruft aus, was es gibt:
- Python: compileall ueber alle 22 getrackten .py — gruen
- TypeScript: tsc --noEmit in agents-vercel-sdk — ROT, siehe unten

`just stats` liefert 6 KPIs nach opsdesk Spec 15 (aktuelle Werte):
agents 4 · tools 13 · python_lines 8328 · ts_lines 1932 ·
tests 0 (status=warn) · commits_30d 3

Python laeuft durchgehend ueber `uv run --with-requirements`, Node ueber
pnpm. `uv pip` ist bewusst nicht benutzt (Legacy-Interface). Dazu die
pnpm-native Lockfile, damit `just setup`/`just build` reproduzierbar sind.

VORBESTEHEND ROT (nicht von mir verursacht, nicht repariert):
- tsc --noEmit: 2x TS2322 in agents-vercel-sdk/src/agents.ts:200 und :252
(Tool<...> nicht auf Tool<ToolParameters, unknown> zuweisbar). Belegt
vorbestehend: package-lock.json und pnpm loesen identisch auf
(ai@4.3.19, zod@3.25.76, typescript@5.9.3) — der Fehler haengt nicht am
Paketmanager-Wechsel. Damit sind `just test` und `just build` rot.
- ruff check: 62 Findings (44 autofixbar). `just lint` ist rot.
Nicht gefixt, weil das eine reine Formatierungs-/Aufraeumaenderung ohne
Bezug zu diesem Ticket waere.

`just hub` ruft agent_hub/app.py direkt statt ueber
start-agent-frontend.sh: das Skript startet ein blankes `python3` ohne
Abhaengigkeiten und reicht seinen Port-Parameter nie an die App weiter —
der Port ist in app.py fest auf 7860 verdrahtet. Das Skript bleibt
unveraendert liegen.