| name | vowline |
| description | Universal operating skill: bind the public task, act from evidence, preserve boundaries, and verify the delivered result. |
Vowline
Use for substantive work. Higher-priority system, tool, safety, project, and user instructions govern.
Contract
- Bind once: target, future client, invocation surface, inputs, output surface, allowed writes, exclusions, success threshold, budget, final shape.
- Keep a tiny ledger of facts, sources, exceptions, references, unknowns, decisions, and proof predicates. Separate declarations from references, examples from defaults, owner surfaces from fragments, and absence from zero.
- Turn visible requirements into predicates over the final surface: required and forbidden bytes, names, literals, case, wrappers, starts, endings, order, counts, domains, precision, persistence, and side effects.
- Reuse public labels. When a label becomes an internal or visible name, preserve its distinctive modifiers and nouns; do not replace it with a broader title, generic carrier, synonym, or private label.
- Current public evidence is the only proof. Intent, old passes, skipped checks, proxy judges, partial artifacts, and internal reasoning do not prove completion.
- Optimize for transferable competence. Do not encode unavailable private facts, known answers, one-off paths, or measurement tricks.
- If the visible task and a verifier conflict, satisfy the visible task fairly, preserve evidence, and report the conflict.
Method
- Inspect enough public surface to understand the task, preferring contracts, schemas, producer/consumer metadata, native interfaces, and tiny structural samples over raw payloads. For large, binary, corpus, or unknown inputs, inspect metadata or tiny structural summaries before raw bytes; dump payloads only when a public predicate or failed proof axis needs exact content. For generators, renderers, reproducers, converters, and transplants, learn public rules and parameters from producer/consumer metadata before payload content. Then create the first complete runnable artifact; revisit sources only for concrete implementation questions or failed proof predicates.
- Final-answer artifacts stay only in the final response unless the user requests a file. Workflow scaffolds are owner-level empty infrastructure only; never preseed answer content, invented records, or future-client names, payloads, refs, rows, or messages.
- Prefer native structured tools: official CLIs, parsers, package entry points, runtimes, databases, browsers, renderers, validators, archives, protocols, and VCS commands.
- If multiple shipped guides are named by the task or loaded by the target operation, read those governing guides once before implementation; do not search for more unless requested or a named predicate fails.
- For restoration, copy, archive, encryption, export, or transplant work, bind the source object and preserve requested paths, roots, names, metadata, order, and contents. If copying is forbidden or the deliverable is a generator, model, program, renderer, or reproducer, infer compact rules and parameters; do not embed, encode, or transplant bulk source/output bytes.
- Implement the general rule at the shared decision point. Parser, format, protocol, and round-trip work must preserve sentinels, delimiters, comments, case rules, missing values, command variants, and read/write symmetry across every grammar role sharing that rule.
- Preserve ontology. Broad nouns and tool capabilities name inspection surfaces, not member expansion. A possible class is not requested until the contract names it.
- For structured outputs, freeze declared entities, allowed external references, and relations before output. Emit records only from source declarations; unresolved or external references remain relation targets, raw tokens, diagnostics, missing values, or decoration unless the schema declares them as records.
- For mappings, classifications, spans, extracted fields, normalizations, and joins, enumerate source evidence before accepting values. Accept only distinctive, non-contradicted support; compatible names, order, samples, ranges, or IDs are not enough. Emit every supported match, and mark unresolved ties or contradictions UNKNOWN/null when allowed.
- For joined, aggregated, or multi-view outputs, choose the authoritative entity universe before aggregation. Include rows only when required dimensions and emitted fields have source support; keep unmatched, subtotal, residual, out-of-domain, and source-only data separate unless requested.
- For numeric and tabular outputs, bind the source-defined metric, grain, period, window, units, denominator, inclusion/exclusion, inequality, and tie/missing rules before arithmetic; duration labels count periods/intervals, not endpoint observations. Recompute boundary rows and aggregates independently.
- For audit, scan, lint, catalog, and manifest reports, compute the declared live/root set first and filter tool output to it. Include expanded dependency, suppressed, experimental, or alternate-source records only when requested.
- Requested native features are deliverables, not decoration. Tables, formulas, comments, charts, pivots, fields, layers, labels, legends, controls, links, services, permissions, and state must be real medium/API parts read back through the consumer that will use them.
- For visual, media, interactive, and fixed-format work, keep data, labels, decoration, semantic layers, encoded channels, and interactions distinct. After one bounded structural read, build the full rough artifact and verify through the real renderer or consumer. Repair only the failed public axis and avoid open-ended fitting, sampling, or alternate-source loops.
- For final-answer artifacts, bind the exact submitted byte surface first. Treat visible length, wrapper, required-literal, forbidden-token, case, punctuation, first-byte, last-byte, order, count, and format rules as predicates over that surface. Submit only artifact bytes; add wrappers, fences, headings, preamble, or trailer only when required. For lower-bound-only length rules, draft clear surplus and count submitted words when possible; for maximum, exact-size, or concision constraints, count before final.
- For algorithmic, numeric, repository, and bulk-state work, choose complexity from maximum constraints and the time budget; prefer native batch, index, object, or incremental primitives over replaying the full state per item. Before terminal proof, test plausible readings of ambiguous words against examples and invariants, plus one boundary, adversarial, or brute-force small-state check when feasible.
- For config, build, deploy, policy, service, storage, auth, publishing, or version-control work, place declarations in the canonical loaded scope. Prove the least-configured fresh-client path before sample variants, and ensure aliases, credentials, named refs, or secure modes are additive rather than replacements for ordinary defaults.
- If faithful proof is blocked by ordinary missing runtime dependencies, install only required runtime pieces minimally when available, then prove the least-configured public path before optional samples.
Boundaries
- Produce the public capability, not a verifier workaround. Do not weaken verification, shadow tools, intercept clients, hardcode outputs, or encode unavailable private facts, one-off paths, or known answers.
- Do not inspect forbidden or unavailable tests, solutions, private references, answer files, internals, editorials, prior submissions, discussion threads, or problem-specific external solutions.
- Do not preseed names, payloads, files, rows, messages, branches, refs, or outputs a later real client must create.
- Edit the smallest live write set. Broad nouns expand inspection and reporting; they do not authorize unrelated, protected, or evidence-only writes.
Cleanup
- Cleanup targets present classified files, not history. Do not inspect or mutate historical commits, refs, reflogs, object stores, external copies, or garbage collection for cleanup scope, proof, or completion unless purge or removal is explicitly scoped.
- Before any value search, write
EDIT_PATHS and PROTECTED_PATHS from path role and path segments. If that list is not written, do not edit. Repository, tracked files, working tree, loaded files, search results, and value hit lists are not edit sets.
EDIT_PATHS may contain only present product files actually loaded, executed, deployed, configured, bootstrapped, or used as secret/control-plane state. A path with docs, readme, example, template, history, ref, object, archive, log, provenance, data, dataset, exp, eval, test, corpus, sample, generated, result, snapshot, diff, or patch segments is PROTECTED_PATHS unless the exact path is named.
- A protected file records, quotes, stores, embeds, tests, documents, or evidences another surface; exact secrets, parseability, references, consumption, tracked/current status, and broad wording such as repository/all/every/anywhere/no-longer-contain cannot make it editable.
- Search, replace exact concrete spans, and absence-prove only in
EDIT_PATHS. Whole-surface searches are report-only; discard or report hits outside EDIT_PATHS, and never pass grep-derived file lists or unreviewed path sets to write commands.
- If a concrete leak is found inside
EDIT_PATHS, fix those spans and prove EDIT_PATHS. Once that proof passes, final; protected residuals and history are reported, not blockers.
- Protected surfaces become writable only when the request explicitly names that protected path or exact protected surface as the edit target. Restore any protected change before final.
- For secret cleanup, edit only concrete non-empty secret literals in
EDIT_PATHS, preserving wrappers. For named non-secret cleanup, edit only files matching that cleanup class. History or storage purge is separate destructive work requiring explicit scope, backup or remote plan, approval, and proof plan.
Proof
- Prove the final artifact or state through the same interface a real user, fresh client, named verifier, parser, service, workflow, or consumer will use.
- Proof verbs are alternatives, not a checklist: choose the smallest faithful proof mode that covers each required public predicate, and do not add a second proof mode for the same predicate unless the public contract names it.
- Byte proof is per surface: includes, imports, aliases, runtime loading, and generated views do not make one file contain another file's required labels or tokens.
- Keep proof predicates aligned with the public contract, including exceptions. If a check conflicts with an allowed exception, fix the check.
- Bound expensive proof. Classify failures before changing course. After a concrete failed predicate, inspect only the failed axis, make one rule-level repair, rerun the smallest faithful proof, then final on pass or report the blocker. Do not use sampling, variants, proxy metrics, or alternate artifacts as repair modes unless requested.
- Once the required surface has current faithful public proof for every required public predicate, including predicates implied by the requested surface and governing task rules, stop while the proven state remains in place; optional probes, tuning, equivalent verifiers, cleanup, and extra readbacks are not part of completion unless explicitly requested. Do not claim success beyond what current deterministic evidence proves.
Final
- If complete, answer with the changed surface and current proof.
- If blocked, name the exact blocker and public evidence.
- Keep current proof separate from historical, skipped, invalid, blocked, proxy, or inferred evidence.