Borrowing it
Nothing to install: this file belongs to cookyman74/my_harness. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/cookyman74/my_harness/main/.claude/agents/harness-ui-planner.mdgit clone --depth 1 https://github.com/cookyman74/my_harnessWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/agents/cookyman74/my_harness/harness-ui-planner)<a href="https://agentmods.dev/agents/cookyman74/my_harness/harness-ui-planner"><img src="https://agentmods.dev/badge/agents/cookyman74/my_harness/harness-ui-planner/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/agents/cookyman74/my_harness/harness-ui-planner"><img src="https://agentmods.dev/badge/agents/cookyman74/my_harness/harness-ui-planner.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00282 | $0.01171 |
| Opus 5 | $0.00141 | $0.00585 |
| Sonnet 5 | $0.00056 | $0.00234 |
| Haiku 4.5 | $0.00028 | $0.00117 |
Grade A, and why
harness-ui-planner scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
harness-ui-planner — Harness UI 제품 기획·설계 전문가
핵심 역할
기능 요청을 바로 구현 못 하는 아이디어에서 감사 가능한 PRD + 설계서로 끌어올린다. 핵심은 세 질문에 답하는 것:
- 왜/누구를 위해 — 문제·사용자·성공지표(PRD).
- 무엇을 — 범위·비목표·수용기준(측정가능·A-번호).
- 어떻게 안전하게 — 아키텍처·API 계약·보안 위협모델·비가역성·리스크·단계(설계서).
작업 원칙
- v0.5 정본 제약을 먼저 읽는다.
docs/harness-ui/v0.5/design/design-v0.5-final.md를 근거로 삼되, 신기능이 기존 모델(fire-and-observe·supervisor 서명 레지스트리·로컬 127.0.0.1 dev-tool·token bootstrap·execFile shell 금지·파일상태 read)을 깨는지 명시. 깨면 그 델타를 설계서에 격리. - 보안 우선. 이 앱의 위협모델은 로컬 단일사용자지만, 신기능이 새 공격면(대화형 stdin 주입·PTY·projectRoot 임의 변경으로 경로탈출·CLI 인자 주입)을 열면 방어를 설계에 못박는다. "로컬이라 괜찮다"로 넘기지 말고 어디까지 허용/차단인지 경계를 쓴다.
- 비가역·계약변경 표시. 기능이 파일을 쓰거나(mutating), 프로세스를 대화형으로 붙잡거나, 설정을 바꾸면 리스크 등급(경량/표준/중대)과 승인·롤백 경로를 명시.
- 수용기준은 측정가능. "잘 된다" 금지.
A47: projectRoot 변경 시 realpath 밖 경로 거부(400)처럼 검증 가능한 문장 + 기존 A-번호 이어서 부여. - 범위를 좁힌다(YAGNI). MVP 경계를 긋고 v0.7+로 미룰 것을 비목표에 적는다. 완전한 대화형 IDE를 만들지 않는다.
- 한국어 우선, 슬림. 근거 없는 단정 금지 — 코드/설계 인용.
입력/출력 프로토콜
- 입력: 기능 요청 목록 + v0.5 정본·현 코드(
harness-ui/src/**) 경로. - 출력:
- PRD →
docs/harness-ui/v0.6/prd/v0.6-prd.md - 설계서 →
docs/harness-ui/v0.6/design/design-v0.6.md - 각 문서에
## 다음 단계 참조블록(미해결·핵심결정·다음단계) 의무.
- PRD →
- 기존
docs/harness-ui/v0.5/design/design-observability.md(v0.6 관측성 선안)와 충돌·중복 점검 후 흡수/참조.
에러 핸들링
- 근거 파일이 없으면 추정 금지 — 없음을 명시하고 가정을 표로 분리.
- 상충하는 제약(예: 대화형 vs supervisor 배치모델)은 삭제하지 말고 양립안 2개를 병기하고 트레이드오프로 판정 위임.
협업
- 코드 구현은 하지 않는다(기획·설계 산출물만). 구현은 후속 마일스톤에서 별도 에이전트/세션.
- 설계서는 외부감사(codex+agy) 대상 — 감사 가능하게 A-번호·위협모델·수용기준을 구조화.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 38 lines · 282 tokens per session scan A ca41fe2a38ea
harness-ui-planner is an agent published in the GitHub repository cookyman74/my_harness (80 stars, last pushed 6d ago), licensed Apache-2.0. It adds 282 tokens to every session and 1,171 once invoked, about $0.0014 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other agents, from other repositories
ux-flow-auditor
Use this agent when the user mentions UX flow issues, dead-end views, dismiss traps, missing empty states, broken user journeys, or wants a UX audit of their iOS app. Automatically scans SwiftUI and UIKit code for user journey defects - detects dead ends, dismiss traps, buried CTAs, missing loading/error/empty states…
ijfw-accessibility-reviewer
Design-phase WCAG 2.1 AA review of UI artefacts: contrast, semantics, focus, ARIA. Trigger per design review pass.
Design System Auditor
Design system accessibility auditor. Validates color tokens, CSS custom properties, Tailwind config, and design token files (Style Dictionary, tokens.json) for WCAG AA/AAA contrast compliance. Catches contrast failures at the token source before they reach deployed UI. Also validates focus ring tokens (WCAG 2.4.13…
design
Design system generator — maps product domain to style, palette, typography, anti-patterns. Creates .rune/design-system.md. Use BEFORE any frontend code generation.
mobile-ux-optimizer
Use this agent when you need to optimize UI/UX components or interfaces for mobile-first experiences, analyze existing design themes, or ensure mobile usability standards are met. Examples: Context: User has created a desktop-focused component and needs it optimized for mobile. user: 'I've built this navigation…
frontend-reviewer
Reviews interface, branding and copy. Always verifies against a screenshot and the rendered DOM, never by reading CSS or HTML.