Communitygithub.com

grahama1970/contrato-de-aceptacion

Convierte un resumen de cliente, un paquete zip, un directorio o un archivo de requisitos único en un paquete de contrato de aceptación tipificado con requisitos extraídos, comprobaciones de aceptación, preguntas abiertas, un borrador de objetivo inmutable y un informe de decisión respaldado por create-report. Úsalo cuando los usuarios digan contrato de aceptación, resumen a requisitos, congelar el objetivo, crear objetivo inmutable, modificar objetivo inmutable, construir un paquete de requisitos de Battle o extraer requisitos de este paquete.

¿Qué es contrato-de-aceptacion?

La habilidad `acceptance-contract` está diseñada para ser utilizada antes de la implementación, cuando se necesita transformar un resumen, ticket, correo electrónico, README, paquete zip o carpeta de evidencia en criterios de aceptación ejecutables. Su función principal es `ensure`, que actúa como un guardián mecánico: valida un `acceptance_bundle.json` existente, lo extrae automáticamente si falta y falla si la fuente ha cambiado desde que se congeló el contrato. La habilidad extrae requisitos, comprobaciones de aceptación y preguntas abiertas, y produce un informe de decisión y un borrador de objetivo inmutable. Está disponible para todos los asistentes de codificación (Claude Code, Cursor, Codex, etc.) y es especialmente útil para evitar que pruebas definidas por la implementación sustituyan los requisitos reales del cliente. La habilidad rechaza por defecto las raíces de repositorio para evitar que los archivos de implementación se conviertan silenciosamente en la fuente de aceptación, y utiliza un medidor de progreso (`acceptance_contract.progress.v1`) que informa el porcentaje completado, las comprobaciones, los elementos pendientes y los próximos pasos.

Compatible con~Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/grahama1970/agent-skills/tree/main/skills/acceptance-contract

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

contrato-de-aceptación

Úsalo antes de la implementación cuando un resumen, ticket, correo electrónico, README, paquete zip o carpeta de evidencia necesite convertirse en criterios de aceptación ejecutables.

Primer comando para el trabajo de implementación:

skills/acceptance-contract/run.sh ensure <zip|directorio|archivo> \
  --out /tmp/contrato-de-aceptacion \
  --project-name oai-trial \
  --goal-mode create

ensure es el guardián mecánico: valida un acceptance_bundle.json existente, lo extrae automáticamente si falta y falla cuando el paquete fuente suministrado ha cambiado desde que se escribió el contrato congelado. Su recibo JSON incluye un medidor acceptance_contract.progress.v1 con percent, checks, outstanding y next_steps. No implementes a partir de un resumen hasta que ensure devuelva status=PASS y el medidor de progreso indique lo que queda.

Pasa el resumen del cliente, paquete zip o directorio de especificaciones deliberadamente preparado como entrada. La CLI rechaza las raíces de repositorio por defecto para que los archivos de implementación no puedan convertirse silenciosamente en la fuente de aceptación. Usa --allow-repo solo cuando el humano solicite explícitamente un contrato para todo el repositorio.

Para resúmenes de cliente de alto riesgo, ejecuta una revisión de segunda línea $ask en el resumen/zip más acceptance_bundle.json antes de la implementación. Incluye WebGPT como revisor cuando esté disponible. Pregunta claramente: "¿Son correctos estos requisitos del contrato, y hemos omitido algo?". Solicita a los revisores que verifiquen si falta alguna obligación del cliente en el contrato congelado, especialmente clases de representación, valores tipificados, condiciones de contorno y modos de fallo descalificantes. La revisión es evidencia consultiva; las puertas deterministas siguen siendo las dueñas de PASS/FAIL. La revisión de oai-trial encontró que la cobertura escalar tipificada también debe requerir equivalencia canónica: cadenas de política formateadas, escalares numéricos solo dígitos, formas decimales, notación científica y valores numéricos de SQLite no pueden ser universos de aceptación separados.

Qué hace

skills/acceptance-contract/run.sh extract <zip|directorio|archivo> \
  --out /tmp/contrato-de-aceptacion \
  --project-name oai-trial \
  --goal-mode create

Salidas:

  • acceptance_bundle.json — fuente de verdad validada por pydantic
  • acceptance_report.json — JSON create_report.report.v1
  • acceptance_report.md — renderizado a través de $create-report
  • IMMUTABLE_GOAL.draft.md — texto de borrador de objetivo o propuesta de modificación

Comandos:

  • extract siempre escribe un nuevo paquete/informe borrador a partir de la fuente suministrada.
  • ensure valida o crea el paquete congelado y rechaza hashes de fuente obsoletos.
  • validate valida solo un acceptance_bundle.json existente e imprime el medidor de progreso.
  • status lee un acceptance_bundle.json existente e imprime solo el medidor de progreso legible por máquina.

Política de objetivo

El comportamiento predeterminado es borrador, no mutar.

  • --goal-mode create escribe un nuevo borrador de objetivo inmutable.
  • --goal-mode amend escribe una propuesta de modificación, no una edición silenciosa.
  • --goal-mode none extrae requisitos sin texto de objetivo.

Un objetivo inmutable real debe crearse o modificarse solo después de la aprobación humana. Esa regla existe porque oai-trial falló cuando pruebas definidas por la implementación sustituyeron al resumen del cliente.

Límite

Esta habilidad extrae requisitos claros y respaldados por la fuente de archivos locales suministrados. No afirma que el contrato extraído esté completo cuando el paquete fuente es ambiguo. La ambigüedad se convierte en open_questions[] y un informe de Necesita Cambios. Rechaza raíces de repositorio por defecto porque oai-trial falló cuando comprobaciones con forma de código sustituyeron al resumen entregado.

Para Battle, pasa el acceptance_bundle.json resultante como el acceptance_floor de la arena y mapea cada acceptance_cases[].id a uno o más ids de casos generadores en required_case_ids del perfil de campaña de Battle. Esos casos mapeados son el piso del contrato que debe pasar antes de que los ataques de fuzzing o más allá del contrato puedan ser acreditados. No hagas que Battle invente los requisitos.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

grahama1970/agent-ecosystem

Canonical map and shared contracts for the agent-governance ecosystem: the pi.receipt_envelope.v1 boundary envelope, the component graph, and the rules for which component owns which schema. Use when wiring a skill or extension into the shared receipt world, when asking how shame, triage-error, tau, ask, project-watchdog, ops-herdr, ponytail, and Memory fit together, or when validating an envelope.

grahama1970/agentic-evals

Agentic evaluation of skills using multi-trial fixtures, deterministic command assertions, trajectory checks, safety constraints, and evidence-backed readiness scoring. Use when users ask for agentic evals, multi-trial skill evaluation, skill trajectory validation, or readiness scoring for a skill workflow.

grahama1970/agent-inbox

File-based inter-agent messaging with headless dispatch. Check inbox, send bugs/requests to other projects, automatically spawn headless agents to fix bugs, and track progress via task-monitor.

grahama1970/agents-registry

Generate and query the centralized agent identity registry. Scans .pi/agents/*/AGENTS.md, parses frontmatter, outputs agents-registry.json and optionally syncs to /memory for semantic search.

grahama1970/agent-status

Artifact-driven status surfaces for long-running project-agent work. Maintains status.json, events.jsonl, proof manifests, and a stale-aware STATUS.html so humans can tell where the agent is, what passed, what is still unproven, and what decision or action is next — without dashboard theater.

grahama1970/align

Round-based context alignment before execution. Use when the human, project agent, WebGPT, scillm, ask, dogpile, memory, or project-knowledge may each hold different facts about a task; especially before ambiguous design, infographic, product workflow, high-stakes implementation, plan-iterate, project-infographic, or multi-review work.

grahama1970/analytics

Flexible data science analytics for any dataset. Auto-discovers schema, recommends charts, exports to create-figure. Works with JSONL, JSON, CSV from any source.

grahama1970/analyze-chatterbox-emotions

Evaluate generated Chatterbox voice files as voice-quality artifacts: affect match, arousal/valence proxies, pause placement, intelligibility inputs, clipping, loudness, and discontinuity flags. Use when reviewing Chatterbox emotional tags, pauses, Turbo/base affect delivery, Persona Dream utterance renders, or whether generated speech matches an intended product-facing affect.

grahama1970/analyze-elf

Reverse-engineer features from ELF binaries. Extracts CLI commands, state machines, protocols, Zod schemas, and data models. Automatically generates a /create-walkthrough prosecution brief with Mermaid diagrams. Uses /treesitter for AST analysis of bundled JS/TS source.

grahama1970/animation-vocabulary

Reverse-lookup glossary that turns a vague description of a web animation or motion effect into its exact term ("the bouncy thing when a popover opens" → Pop in; "the iOS rubber-band scroll" → Rubber-banding). Use when the user asks "what's it called when…", or describes a motion effect without knowing its name and wants the right word to prompt an AI or designer with. For naming an effect, not designing or building one.

grahama1970/anonymize-data

Anonymize supported CSV, JSON, UTF-8 text, and SQLite files using an explicit policy through the oai-trial project. Use for anonymize data, pseudonymize exports, redact policy literals, or discover and explicitly approve fuzzy name aliases. The skill is a thin CLI/Docker interface, not another engine.

grahama1970/anvil

Heavy-duty "No-Vibes" debugging and hardening orchestrator. Use this for complex, stubborn bugs where `review-code` has failed, or for "Red Teaming" (hardening) a codebase. Runs multiple agents in parallel (Thunderdome) using git worktree isolation.

grahama1970/apple-design

Apple's approach to interface design and fluid, physical motion, translated for the web. Use when building or reviewing gesture-driven UI, spring animations, drag/swipe/sheet interactions, momentum and interruptible transitions, translucent materials and depth, typography (optical sizing, tracking, leading), reduced-motion, or the design foundations (feedback, spatial consistency, restraint) behind Apple-style interfaces.

grahama1970/argue

Multi-persona structured debate orchestrator. Personas research via /dogpile, consult colleagues via /ask, and argue toward nuanced synthesis on complex questions.

grahama1970/arxiv

Search arXiv for papers and extract knowledge into memory. Use `search` to find papers, `learn` to extract knowledge.

grahama1970/ask

Use when the user asks to query project memory, ask an oracle, use supported browser-backed reviewers, run Tau roundtable/single-handler workflows, ask Pi-native subagents from within Pi, run persona/deep-review workflows, generate image prompts, check OS/project health through composed skills, or run an ask DAG. This skill is the executable /ask runtime; do not replace it with an informal subagent, plain web search, or hand-written review; inside Pi, explicit Pi-native subagent targets are routed through the pi-subagents tool as an Ask target type.

grahama1970/assess

Step back and critically reassess project state. Use when asked to "assess", "step back", "fresh eyes", "check alignment", "sanity check", "health check", "prune documentation", or "evaluate what's working". Offers documentation pruning and doc-code alignment analysis. Offer to run after major changes (don't auto-run).

grahama1970/assistant

Shared GPT + classifier inference gateway for persona monitor tasks. Routes validation and classification through a 4-tier cascade: heuristic → classifier → local GPT → scillm.

grahama1970/assistant-lab

Self-improvement workbench for /assistant. All the tools needed to diagnose, train, evaluate, and promote models in a continuous loop. The "warm pond" where /assistant evolves its own inference stack.

grahama1970/batch-quality

Pre-flight validation and quality gates for batch LLM operations. ACTUALLY tests samples through LLM before burning tokens. Uses SPARTA contracts for DuckDB validation queries. Integrates with task-monitor for enforced quality gates.

Skills relacionados