diff --git a/CHANGELOG.md b/CHANGELOG.md index cd8302c4..62957bd8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,19 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ## [Unreleased] +### Changed + +- **Batched semantic-index embedding.** `aicx index` now embeds chunks in + batches through the existing `embed_batch` API instead of one HTTP + round-trip per chunk. For the cloud backend this collapses the dominant + per-chunk latency of a full build (one OpenAI-compatible POST carries an + `input` array of up to `batch_size` texts). Batch size is configurable + via `[embedder.cloud] batch_size` (default 16) with an `AICX_EMBED_BATCH` + env override; GGUF stays serial (`batch_size` 1) by default and opts in + only via the env var. A failing batch retries once, then degrades to + per-item embedding so one poison chunk cannot abort the run. Checkpoint, + resume, `--sample N`, and per-chunk progress ticks are unchanged. + ## [0.11.0] - 2026-07-13 Parser engine transplant — "Noc francuskiego łącznika". Full session-engine diff --git a/LICENSE b/LICENSE index 9c2599e1..87f502f0 100644 --- a/LICENSE +++ b/LICENSE @@ -3,25 +3,25 @@ License text copyright (c) 2020 MariaDB Corporation Ab, All Rights Reserved. Parameters -Licensor: Vetcoders +Licensor: Libraxis AI sp. z o.o. Licensed Work: ai-contexters (AICX) — Operator CLI + MCP server for AI session context ingestion and retrieval. - The Licensed Work is (c) 2024-2026 Vetcoders. + The Licensed Work is (c) 2024-2026 Libraxis AI sp. z o.o. Additional Use Grant: You may make production use of the Licensed Work, provided Your use does not include offering the Licensed Work to third parties on a hosted or embedded - basis in order to compete with Vetcoders' paid + basis in order to compete with Libraxis AI sp. z o.o.'s paid version(s) of the Licensed Work. For purposes of this license: A "competitive offering" is a Product that is offered to third parties on a paid basis, including through paid support arrangements, that significantly overlaps - with the capabilities of Vetcoders' paid version(s) of + with the capabilities of Libraxis AI sp. z o.o.'s paid version(s) of the Licensed Work. If Your Product is not a competitive offering when You first make it generally available, it will not become a competitive offering later due to - Vetcoders releasing a new version of the Licensed Work + Libraxis AI sp. z o.o. releasing a new version of the Licensed Work with additional capabilities. In addition, Products that are not provided on a paid basis are not competitive. diff --git a/SECURITY.md b/SECURITY.md index 3db39c05..105c1bce 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -8,8 +8,8 @@ If you discover a security vulnerability in aicx, please report it responsibly. ### How to Report -- Use [GitHub Security Advisories](https://github.com/vetcoders/ai-contexters/security/advisories/new) to submit a private report. -- Alternatively, contact us directly at **hello@vetcoders.io**. +- Use [GitHub Security Advisories](https://github.com/Loctree/aicx/security/advisories/new) to submit a private report. +- Alternatively, contact us directly at **security@loctree.com**. ### What to Include diff --git a/archive/skills/README.md b/archive/skills/README.md deleted file mode 100644 index 2fc2cdd7..00000000 --- a/archive/skills/README.md +++ /dev/null @@ -1,174 +0,0 @@ -# VetCoders Skills Suite - -**Ten skills that take AI agents from blind coding to shipped products.** - -The complete pipeline from context bootstrap to marketplace launch — born from the [Definition of Undone](https://vetcoders.io/definition-of-undone) manifesto and 14 months of building production software with AI agents. - -## The Pipeline - -``` -vetcoders-ship "task description" - │ - Phase 1 — Build: init → workflow → followup - │ ↓ - Phase 2 — Converge: marbles ↻ (loop until P0=P1=P2=0) - │ ↓ - Phase 3 — Ship: dou → decorate → hydrate - │ - done. -``` - -One command runs the full sequence. All sub-skills remain individually callable. -implement/spawn are internal execution tools used by workflow and marbles. - -## Skills - -### Orchestrator - -| Skill | Purpose | Key Output | -|-------|---------|------------| -| **vetcoders-ship** | Master orchestrator — runs the full Build → Converge → Ship pipeline | Ship report + all phase artifacts | - -### Phase 1: Build - -| Skill | Purpose | Key Output | -|-------|---------|------------| -| **vetcoders-init** | Bootstrap session with Memory (ai-contexters) + Eyes (loctree MCP) | Situational report | -| **vetcoders-workflow** | ERi Pipeline: Examine → Research → Implement | CONTEXT.md, RESEARCH.md, reports/ | -| **vetcoders-followup** | Post-implementation audit with P0/P1/P2 severity model | GO / NO-GO verdict | - -### Internal Execution Tools - -| Skill | Purpose | Key Output | -|-------|---------|------------| -| **vetcoders-implement** | Native Claude Task tool delegation (safe, sandboxed) | Plans + reports in .ai-agents/ | -| **vetcoders-spawn** | External agent fleet via osascript Terminal (power-user) | Plans + reports in .ai-agents/ | - -### Phase 2: Converge - -| Skill | Purpose | Key Output | -|-------|---------|------------| -| **vetcoders-marbles** | Iterative convergence through diffusion — loops until P0=P1=P2=0 | Convergence trajectory + DoU→DoD transition | - -### Phase 3: Ship - -| Skill | Purpose | Key Output | -|-------|---------|------------| -| **vetcoders-dou** | Definition of Undone audit across entire product surface | Undone Matrix + Plague Score | -| **vetcoders-decorate** | Visual polish and curb appeal — branded pages, interactive showcases, animations | Showcase HTML + brand tokens | -| **vetcoders-hydrate** | Package for market: repo governance, SEO, distribution, listings | "Done Done" artifacts | - -## Requirements - -### Required -- [loctree MCP](https://github.com/VetCoders/loctree) — structural code intelligence (98% vs 85% task completeness) -- [ai-contexters](https://github.com/VetCoders/ai-contexters) — session history extraction - -### Optional (enhance capabilities) -- [brave-search](https://brave.com/search/api/) — web research in workflow phase -- [Context7](https://context7.com) — library documentation lookup -- [semgrep](https://semgrep.dev) — security gate in follow-up audits - -## Installation - -### As Claude Code Skills - -```bash -# Clone the suite -git clone https://github.com/VetCoders/vetcoders-skills-suite ~/.claude/skills/vetcoders - -# Or copy individual skills -cp -r vetcoders-ship ~/.claude/skills/ -cp -r vetcoders-init ~/.claude/skills/ -cp -r vetcoders-workflow ~/.claude/skills/ -cp -r vetcoders-implement ~/.claude/skills/ -cp -r vetcoders-spawn ~/.claude/skills/ -cp -r vetcoders-followup ~/.claude/skills/ -cp -r vetcoders-marbles ~/.claude/skills/ -cp -r vetcoders-dou ~/.claude/skills/ -cp -r vetcoders-decorate ~/.claude/skills/ -cp -r vetcoders-hydrate ~/.claude/skills/ -``` - -### As a Claude Code Plugin - -```bash -# Coming soon — marketplace submission in progress -claude plugin install vetcoders-skills-suite -``` - -## Quick Start - -### The one-liner -> "Ship: add auth module with JWT" or "Wypusc to: dodaj autoryzacje" - -Runs `vetcoders-ship`: the full pipeline from context to market in one command. - -### Or run individual phases: - -### 1. Initialize a session -> "Init session for this repo" or "Daj kontekst agentowi" - -Runs `vetcoders-init`: extracts memory, maps structure, produces situational report. - -### 2. Full implementation workflow -> "ERi pipeline for adding auth module" or "Zbadaj i zaimplementuj" - -Runs `vetcoders-workflow`: Examine (loctree) → Research (web) → Implement (subagents). - -### 3. Audit what you built -> "Follow-up check" or "Czy są jeszcze luki?" - -Runs `vetcoders-followup`: validates implementation, produces GO/NO-GO verdict. - -### 4. Loop until converged -> "Marbles — loop until clean" or "Kulki — iteruj aż będzie gotowe" - -Runs `vetcoders-marbles`: loops until the circle is full — P0=0, P1=0, P2=0. - -### 5. Check if it's truly done -> "Definition of Undone audit" or "Co brakuje do launchu?" - -Runs `vetcoders-dou`: crawls URLs, checks governance, measures the packaging gap. - -### 6. Fix the gap -> "Hydrate this project" or "Nawodnij" - -Runs `vetcoders-hydrate`: generates missing artifacts, fixes SEO, creates listings. - -## The Definition of Undone - -> *AI agents have solved the hardest part of software creation: making the thing work. They have not yet solved the second hardest part: making the thing reachable.* - -This suite exists because we observed a pattern we call the **Always-in-Production Plague**: technically excellent software that never ships to users. The cause is not bad code — it's the systematic gap between "it works" and "someone can find, install, and pay for it." - -Phase 1 (init, workflow, followup) ensures the code is built right. Phase 2 (marbles) loops until the circle is full. Phase 3 (dou, hydrate) ensures it actually ships. implement/spawn are the execution engines used internally. - -## Supported Languages & Ecosystems - -The skills are language-agnostic with specific optimizations for: -- **Rust**: `cargo clippy -- -D warnings`, crates.io publishing -- **TypeScript/JavaScript**: npm/pnpm workflows -- **Python**: PyPI packaging -- **macOS**: osascript Terminal spawn, DMG/notarization -- **Any language**: loctree MCP supports 30+ languages - -## Contributing - -See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines. - -The suite uses its own methodology — before submitting changes: -1. Run `vetcoders-init` to bootstrap context -2. Use `vetcoders-workflow` for non-trivial changes -3. Run `vetcoders-followup` before opening a PR -4. Run `vetcoders-dou` on the suite itself periodically - -## License - -MIT — see [LICENSE](LICENSE). - -## Developed by - -vetcoders — founders and their AI agents. - -*Vibecrafted with AI Agents by vetcoders (c)2026* diff --git a/archive/skills/_ARCHIVE_NOTE.md b/archive/skills/_ARCHIVE_NOTE.md deleted file mode 100644 index 4039e726..00000000 --- a/archive/skills/_ARCHIVE_NOTE.md +++ /dev/null @@ -1,100 +0,0 @@ ---- -archive: vetcoders-skill-suite-feb-2026 -era: pre-rebrand -captured_at: 2026-05-08 -captured_by: claude (vc-ownership /loop session) -authority: RepoVerified ---- - -# VetCoders skill suite — pre-rebrand archive (Feb–Mar 2026) - -This directory captures the **original `vetcoders-*` skill suite** as it -existed in `aicx` repo before the framework rename to `vibecrafted` and -the skill prefix shift `vetcoders-*` → `vc-*`. Folder mtimes range -2026-02-27 → 2026-03-08. - -It was discovered 2026-05-08 sitting untracked under `aicx/skills/`, -gitignored away by `.gitignore`'s `/skills` rule. The operator briefly -removed the rule to surface it for archeology, then asked it be -preserved here so the lineage stops being a silent inode. - -## Why archive (not delete) - -The skill suite is **doctrine-grade history**. Today's `vc-*` skills -inherit names, mental models, and trigger phrases from these earlier -forms. Reading them side-by-side shows precisely how the framework -sharpened: - -- `vetcoders-init` → `vc-init` — neutral "give context" → post-vibe-coding triage doctrine -- `vetcoders-spawn` → `vc-agents` — osascript Terminal hack → proper agent fleet abstraction -- `vetcoders-subagents` → `vc-delegate` — how-to script → decision doctrine -- `vetcoders-ship` → `vc-release` — pipeline orchestrator → publish-readiness gate (security/DNS/SEO/verification) -- `vetcoders-marbles` → `vc-marbles` — "noise scheduler" metaphor → "truth-convergence executor" operational -- `vetcoders-implement` → `vc-implement` — delegation tool → end-to-end delivery owner - -Plus 9 brand-new skills appeared between Mar and May 2026: -`vc-ownership`, `vc-partner`, `vc-research`, `vc-review`, `vc-scaffold`, -`vc-prune`, `vc-intents`, `vc-polarize` (added 2026-05-08, day of this -archive), and the `vc-justdo` legacy alias. - -5 utility skills (`ai-contexters`, `bravesearch`, `loctree`, `pdf`, -`docs`) were lifted out of the bundle during the rebrand and live now -either as standalone user-skills (`~/.claude/skills//`) or were -absorbed into the MCP layer (brave-search MCP, loctree-mcp). - -## Provenance - -Source: `aicx` repository, branch `feat/aicx-extract-improvements`, -present in working tree as of 2026-05-08 ~21:35 local time. Folder -contained 31 files across 16 top-level directories plus -`vetcoders-suite-showcase.html` (46 KB rebrand-era marketing landing) -and `README.md` (6.8 KB suite description). - -The current canonical skill source-of-truth lives at -`vc-runtime/vibecrafted/skills/` with the `vc-*` naming. This archive -is **not** the install path — operators install skills via vibecrafted -(`vc-runtime/vibecrafted/skills/`) and Claude Code surface -(`~/.claude/skills/`). - -## Authority - -`RepoVerified` — every file mtimes / structure was preserved verbatim -during `mv skills archive/skills`. No content edits. - -## Redaction note (2026-05-08) - -`bravesearch/brave_search.py` historically hardcoded a real Brave Search -API key (line 17, 32-char token). Two-step cleanup: - -1. **Initial redact** of the constant to env-var lookup — caught the - leak before any `git push` could publish it. -2. **Drop the file entirely.** A `.py` script is implementation detail, - not doctrine. The doctrine value of the bravesearch skill lives in - the sibling `SKILL.md` (description, trigger phrases, scope). The - script was a how-to artifact that does not need to be archived. The - alternative — keeping it with `archive/` excluded from semgrep — - would be a silencer (per `vc-prune` skill: rip every silencer). So - the file is dropped, semgrep gates remain active across the whole - repo, and live security policy stays uniform. -3. **Rotated upstream** by the operator at the Brave Search dashboard. - The leaked token is no longer accepted. - -The pre-redaction commit (`7252629`) was unpushed when the leak was -caught, so the leaked token never entered the published git history of -this repo. Conversation transcript that surfaced the value has been -flagged separately for any necessary downstream cleanup (aicx corpus, -dispatched-agent contexts, etc.). - -Future rule: archive content must pass the same security gates as live -code. If an archive contender carries hardcoded secrets, the secret -must be removed (or the file dropped) before the archive lands — -silencers in `.semgrepignore` are not a substitute. - -## Out of scope - -- This archive is **frozen**. Do not edit `vetcoders-*` files here. - Doctrine evolution happens in `vc-runtime/vibecrafted/skills//`. -- This archive is **not** a fallback skill source. If a tool tries to - load skills from here, that's a wiring bug — fix the wiring. - -`𝚅𝚒𝚋𝚎𝚌𝚛𝚊𝚏𝚝𝚎𝚍.` with AI Agents by VetCoders (c)2024-2026 LibraxisAI diff --git a/archive/skills/ai-contexters/SKILL.md b/archive/skills/ai-contexters/SKILL.md deleted file mode 100644 index da611652..00000000 --- a/archive/skills/ai-contexters/SKILL.md +++ /dev/null @@ -1,227 +0,0 @@ ---- -name: ai-contexters -version: "1.0" -description: >- - This skill should be used when the user asks to "extract context", - "recover session", "get timeline", "bootstrap agent context", - "init ai-context", "sync to memex", "list sessions", "find stored contexts", - "check dedup state", "extract from claude", "extract from codex", - "extract from gemini", "run aicx", "get context from previous session", - "what was I working on", "resume previous session", - or needs to recover plans, decisions, and work history from AI agent sessions - (Claude Code, Codex, Gemini CLI). Covers the full aicx CLI: - extraction, storage, vector sync, state management, and repo bootstrapping. ---- - -# ai-contexters — Context Ops Pipeline for AI Agent Sessions - -A Rust CLI that extracts, deduplicates, stores, and syncs timelines from -Claude Code, Codex, and Gemini CLI sessions. Turns raw JSONL/JSON logs into -clean, agent-readable markdown chunks with signal extraction. - -**Binary location**: `aicx` (in PATH via cargo install) -**Central store**: `~/.ai-contexters/` -**Repo workspace**: `.ai-context/` (created by `init`) - -## Core Workflows - -### 1. Daily Extraction (most common) - -Extract from all agents, incremental, store centrally: - -```bash -aicx all -H 24 --incremental -``` - -Extract from specific project, last 7 days: - -```bash -aicx claude -p CodeScribe -H 168 --incremental -``` - -Extract and sync to vector memory: - -```bash -aicx all -H 48 --incremental --memex -``` - -### 2. Session Recovery (before resuming work) - -Find the session file and extract a readable report: - -```bash -aicx extract --format claude ~/.claude/projects//.jsonl -o /tmp/report.md -``` - -For Codex sessions: - -```bash -aicx extract --format codex ~/.codex/history.jsonl -o /tmp/codex.md -``` - -For Gemini sessions: - -```bash -aicx extract --format gemini ~/.gemini/tmp//chats/session-*.json -o /tmp/gemini.md -``` - -### 3. Repo Bootstrap (init) - -Bootstrap `.ai-context/` workspace with full context and optionally launch agent: - -```bash -aicx init --agent codex --no-confirm --action "Audit memory and propose next steps" -``` - -Build context only (no agent launch): - -```bash -aicx init --no-run --action "Review and refactor auth module" -``` - -### 4. Reference Lookup - -Find stored context files from last 3 days: - -```bash -aicx refs -H 72 -``` - -Filter by project: - -```bash -aicx refs -H 168 -p CodeScribe -``` - -### 5. State Management - -Check dedup statistics: - -```bash -aicx state --info -``` - -Reset dedup for fresh re-extraction: - -```bash -aicx state --reset -p CodeScribe -``` - -## Command Reference (Quick) - -| Command | Purpose | Key Flags | -|---------|---------|-----------| -| `all` | Extract from all agents | `-H`, `--incremental`, `--memex`, `-p` | -| `claude` | Extract Claude Code sessions | `-H`, `-p`, `--incremental`, `--loctree` | -| `codex` | Extract Codex sessions | `-H`, `-p`, `--incremental` | -| `extract` | One-shot file extraction | `--format `, `-o` | -| `store` | Store + optional memex sync | `-p`, `-a`, `-H`, `--memex` | -| `memex-sync` | Sync chunks to vector memory | `-n`, `--per-chunk`, `--db-path` | -| `list` | Discover available sessions | (no flags) | -| `refs` | List stored context files | `-H`, `-p` | -| `state` | Manage dedup/watermarks | `--info`, `--reset`, `-p` | -| `init` | Bootstrap .ai-context/ workspace | `--agent`, `--action`, `--no-run` | - -For detailed flag reference, consult `references/commands.md`. - -## Output Modes - -Control stdout output with `--emit`: -- **paths** (default): One file path per line, pipe-friendly -- **json**: Structured JSON with metadata, entries, store paths -- **none**: Silent (store only) - -Local output with `-o `: -- `-f md` — Markdown report -- `-f json` — JSON report -- `-f both` — Both formats (default for `all`) - -## Key Concepts - -### Store-First Architecture -Every extraction writes to `~/.ai-contexters///` before optional -local output. Central history builds automatically. - -### Incremental Processing -`--incremental` tracks watermarks per agent+project. Re-runs skip already-processed -entries. Essential for cron / scheduled workflows. - -### Deduplication (Two-Level) -- **Exact**: `(agent, timestamp, message)` hash -- **Overlap**: `(timestamp_bucket_60s, message)` across agents — catches same prompt - sent to multiple agents simultaneously - -### Signal Extraction -Chunks include `[signals]...[/signals]` blocks highlighting: -- TODO items (`- [ ]`, `- [x]`) -- Intent/result lines -- Tag vicinity: `Ultrathink`, `Insight`, plan mode markers -- Keywords: `Decision:`, `TODO:`, `Plan:` - -### Secret Redaction -Enabled by default. Redacts API keys, tokens, PEM blocks, auth headers. -Disable with `--no-redact-secrets` (not recommended). - -## Init Command Deep Dive - -`init` is the most complex command — bootstraps a full agent workspace: - -1. Detect repo root (git root) -2. Run `loct auto` + `loct --for-ai` (codebase snapshot) -3. Extract context from stored sessions (memories) -4. Build composite prompt (context + loctree + action + agent-prompt) -5. Optionally dispatch agent (Terminal.app on macOS, subprocess on Linux) - -**Created structure:** `.ai-context/` with `share/artifacts/` (git-tracked) and `local/` (git-ignored). See `references/architecture.md` for full layout. - -**Custom prompting:** -```bash -aicx init --agent codex --agent-prompt "Focus only on Rust modules" --action "Refactor VAD" -aicx init --agent claude --agent-prompt-file ./my-prompt.md --no-confirm -``` - -**Requires**: `loct` in PATH (or `LOCT_BIN` env var). - -## Environment Variables - -| Variable | Purpose | -|----------|---------| -| `LOCT_BIN` | Override path to `loct` binary (used by `init`) | - -## Common Patterns - -### Pipe to downstream tools - -```bash -# Feed stored paths to another agent -aicx claude -p CodeScribe -H 24 --emit paths | xargs cat > /tmp/full-context.md - -# JSON for automation -aicx all -H 48 --emit json | jq '.store_paths[]' -``` - -### Cron job (daily extraction) - -```bash -# In crontab: extract all, incremental, sync to memex -0 9 * * * aicx all -H 24 --incremental --memex 2>> ~/.ai-contexters/cron.log -``` - -### Trim large sessions - -```bash -aicx extract --format claude /path/to/huge.jsonl -o /tmp/report.md --max-message-chars 8000 -aicx extract --format claude /path/to/huge.jsonl -o /tmp/report.md --user-only -``` - -## Additional Resources - -### Reference Files - -For detailed command flags and architecture: -- **`references/commands.md`** — Complete flag reference for all 11 subcommands -- **`references/architecture.md`** — Module map, data flow, storage layout - ---- - -*Created by vetcoders (c)2026* diff --git a/archive/skills/ai-contexters/references/architecture.md b/archive/skills/ai-contexters/references/architecture.md deleted file mode 100644 index 95b03eef..00000000 --- a/archive/skills/ai-contexters/references/architecture.md +++ /dev/null @@ -1,172 +0,0 @@ -# ai-contexters — Architecture Reference - -## Data Flow - -``` -Agent Sessions ai-contexters Outputs -───────────── ────────────── ─────── -~/.claude/projects/ ─┐ -~/.codex/history.jsonl ├──▶ Extract ──▶ Normalize ──▶ Dedup ──▶ Redact ──▶ Chunk ──▶ Store -~/.gemini/tmp/ ─┘ │ │ - │ ├──▶ ~/.ai-contexters/ (central) - │ ├──▶ local -o (optional) - │ ├──▶ stdout --emit (paths/json) - │ └──▶ memex (optional) - │ - └──▶ extract (one-shot, bypasses store) -``` - -## Module Map (src/) - -| Module | LOC | Purpose | Key Exports | -|--------|-----|---------|-------------| -| `main.rs` | ~350 | CLI entry (clap), command dispatch | `Commands` enum, `main()` | -| `lib.rs` | ~30 | Public library re-exports | All module re-exports | -| `sources.rs` | ~600 | Per-agent extraction logic | `extract_claude()`, `extract_codex()`, `extract_gemini()`, `TimelineEntry`, `ExtractionConfig` | -| `state.rs` | ~250 | Dedup hashes + watermarks + run history | `StateManager`, `RunRecord` | -| `store.rs` | ~300 | Central store layout + indexing | `write_context_chunked()`, `load_index()`, `save_index()` | -| `chunker.rs` | ~400 | Semantic windowing + signal extraction | `Chunk`, `ChunkerConfig`, `chunk_entries()`, `extract_signals()` | -| `output.rs` | ~200 | Local report writing + loctree integration | `write_report()`, `write_markdown_report_to_path()` | -| `memex.rs` | ~150 | rmcp-memex vector sync (shells out) | `sync_new_chunks()`, `MemexConfig`, `MemexSyncState` | -| `redact.rs` | ~100 | Secret redaction (regex engine) | `redact_secrets()` | -| `sanitize.rs` | ~50 | Path traversal prevention | `validate_read_path()`, `validate_write_path()` | -| `init.rs` | ~500 | .ai-context/ bootstrap + agent dispatch | `run_init()`, `InitOptions` | - -## Core Data Types - -### TimelineEntry (normalized schema) - -```rust -struct TimelineEntry { - timestamp: DateTime, - role: String, // "user", "assistant", "system" - agent: String, // "claude", "codex", "gemini" - message: String, // text content (tool calls stripped) - session_id: String, - git_branch: Option, - cwd: Option, - project: Option, -} -``` - -All agent-specific formats normalize to this schema during extraction. - -### Chunk (output unit) - -```rust -struct Chunk { - id: String, - project: String, - agent: String, - date: NaiveDate, - entries: Vec, - signals: Vec, // extracted highlights - token_estimate: usize, // ceil(chars / 4) -} -``` - -Target: ~1500 tokens per chunk, 2-message overlap between chunks. - -### StateManager - -```rust -struct StateManager { - dedup_hashes: HashMap>, // per-project exact hashes - overlap_hashes: HashMap>, // per-project 60s-bucket hashes - watermarks: HashMap>, // per-agent+project last_processed - run_history: Vec, // audit trail -} -``` - -Persisted to `~/.ai-contexters/state.json`. - -## Input Format Parsing - -### Claude Code JSONL - -Each line = one message exchange. Fields: -- `message` — the text content -- `timestamp` — ISO 8601 -- `type` — `"user"`, `"assistant"`, `"tool_use"`, `"tool_result"` -- `gitBranch`, `cwd`, `sessionId` — metadata -- Only `type == "text"` blocks rendered (tool calls intentionally stripped) - -### Codex JSONL - -`~/.codex/history.jsonl` — one line per entry: -- `session_id`, `text`, `ts`, `role`, `cwd` -- Per-session grouping during extraction - -### Gemini JSON - -`~/.gemini/tmp//chats/session-*.json` — array format: -- `messages[].type` — `"user"`, `"model"` -- `messages[].content` — text -- `messages[].timestamp` -- `messages[].thoughts[]` — reasoning (if available) - -## Signal Extraction Rules - -Signals highlight important content in chunks: - -| Pattern | Type | Example | -|---------|------|---------| -| `- [ ]`, `- [x]` | TODO | Task checklist items | -| `Decision:` | Decision | Architectural decisions | -| `TODO:`, `FIXME:` | Action | Action items | -| `Plan:` | Plan | Plan descriptions | -| `Ultrathink` | Tag | Extended reasoning blocks | -| `Insight` | Tag | Educational insight blocks | -| `SMOKE TEST PASSED` | Result | Verification outcomes | -| Plan mode markers | Context | Plan mode entry/exit | - -Signals appear in `[signals]...[/signals]` blocks at chunk top. - -## Deduplication Strategy - -**Level 1 — Exact dedup:** -- Hash: `blake3(agent + timestamp_iso + message_first_500_chars)` -- Per-project segregation -- Prevents same message from appearing twice - -**Level 2 — Overlap dedup:** -- Hash: `blake3(timestamp_bucket_60s + message_first_200_chars)` -- Cross-agent: catches same prompt sent to Claude AND Codex simultaneously -- 60-second bucket = messages within same minute are overlap candidates - -## .ai-context/ Workspace Structure (init) - -``` -.ai-context/ - share/ # Git-tracked, shared across team - artifacts/ - SUMMARY.md # Curated, append-only, trimmed to 500 lines - TIMELINE.md # Full append-only timeline - TRIAGE.md # P0/P1/P2 task triage - prompts/ # Task prompts in "Emil Kurier" format - local/ # Git-ignored, per-developer - context/ # Loctree snapshots, raw memories - prompts/ # Generated prompts for agent dispatch - logs/ # Run logs - runs/ # Run metadata - state/ # Local state - config/ # Local config overrides - memex/ # Local memex data -``` - -`share/` is intended for version control. `local/` is added to `.gitignore`. - -## Dependencies - -- **clap v4** (derive) — CLI argument parsing -- **chrono** — DateTime handling -- **serde / serde_json** — JSON serialization -- **tracing** — Structured logging -- **regex** — Secret redaction + pattern matching -- **dirs** — Platform-appropriate home directory - -No async runtime. Single-threaded synchronous execution. - ---- - -*Created by vetcoders (c)2026* diff --git a/archive/skills/ai-contexters/references/commands.md b/archive/skills/ai-contexters/references/commands.md deleted file mode 100644 index 9dd197d7..00000000 --- a/archive/skills/ai-contexters/references/commands.md +++ /dev/null @@ -1,227 +0,0 @@ -# aicx — Complete Command Reference - -## Global Flags - -| Flag | Default | Description | -|------|---------|-------------| -| `--no-redact-secrets` | off (secrets ARE redacted) | Disable automatic secret redaction | - -Redacted patterns: PEM blocks, `Authorization: Bearer`, env vars with `*_API_KEY`/`*_TOKEN`/`*_SECRET`/`*_PASSWORD` suffixes, OpenAI `sk-*`, GitHub `ghp_*`/`github_pat_*`, Slack `xox*`, AWS `AKIA*`, Google `AIza*`. - ---- - -## aicx claude - -Extract timelines from Claude Code sessions (`~/.claude/projects/*/*.jsonl`). - -| Flag | Short | Default | Description | -|------|-------|---------|-------------| -| `--project ...` | `-p` | all | Filter by project directory name(s) | -| `--hours ` | `-H` | 48 | Lookback window in hours | -| `--output ` | `-o` | none | Write local report files to directory | -| `--format ` | `-f` | both | Local output format | -| `--append-to ` | | none | Append to single timeline file | -| `--rotate ` | | 0 (unlimited) | Keep only last N local files | -| `--incremental` | | off | Skip already-processed entries (watermark) | -| `--user-only` | | off | Exclude assistant + reasoning messages | -| `--loctree` | | off | Include loctree snapshot in output | -| `--project-root ` | | cwd | Project root for loctree | -| `--memex` | | off | Chunk and sync to memex after extraction | -| `--force` | | off | Ignore dedup hashes (full re-extraction) | -| `--emit ` | | paths | Stdout output mode | - -**Example:** -```bash -aicx claude -p CodeScribe -H 72 --incremental --loctree --emit json -``` - ---- - -## aicx codex - -Extract from Codex history (`~/.codex/history.jsonl`). - -Same flags as `claude`. Treats Codex per-session, per-message entries. - -**Example:** -```bash -aicx codex -p loctree-plugin -H 24 --incremental -``` - ---- - -## aicx all - -Extract from all agents (Claude + Codex + Gemini) simultaneously. - -Same flags as `claude` except `--format` is hardcoded to `both` for local output. - -**Example:** -```bash -aicx all -H 168 --incremental --memex -``` - ---- - -## aicx extract - -Direct one-shot file extraction. No agent discovery, no store, no dedup. - -| Flag | Short | Required | Description | -|------|-------|----------|-------------| -| `--format ` | | yes | Input file format | -| `input` (positional) | | yes | Input file path (JSONL or JSON) | -| `--output ` | `-o` | yes | Output file (.md or .json, auto-detected) | -| `--user-only` | | no | Exclude assistant messages | -| `--max-message-chars ` | | no | Truncate messages (0 = no truncation) | - -**Supported inputs:** -- Claude: `*.jsonl` session files, `*.output` task files -- Codex: `history.jsonl`, session JSONL files -- Gemini: `session-*.json` files - -**Examples:** -```bash -aicx extract --format claude ~/.claude/projects/proj/uuid.jsonl -o /tmp/report.md -aicx extract --format codex ~/.codex/history.jsonl -o /tmp/codex.md --user-only -aicx extract --format gemini ~/.gemini/tmp/hash/chats/session-1.json -o /tmp/gemini.md -aicx extract --format claude /path/to/huge.jsonl -o /tmp/short.md --max-message-chars 8000 -``` - ---- - -## aicx store - -Store extracted contexts centrally and optionally sync to memex. - -| Flag | Short | Default | Description | -|------|-------|---------|-------------| -| `--project ...` | `-p` | all | Project filter(s) | -| `--agent ` | `-a` | all | Agent filter: `claude`, `codex`, `gemini` | -| `--hours ` | `-H` | 48 | Lookback window | -| `--user-only` | | off | Exclude assistant messages | -| `--memex` | | off | Chunk and sync to memex after storage | - -**Output:** Chunked markdown in `~/.ai-contexters///`, paths to stdout. - -**Example:** -```bash -aicx store -p CodeScribe --agent claude -H 720 --memex -``` - ---- - -## aicx memex-sync - -Sync stored chunks from `~/.ai-contexters/memex/chunks/` to rmcp-memex vector memory. - -| Flag | Short | Default | Description | -|------|-------|---------|-------------| -| `--namespace ` | `-n` | ai-contexts | Vector namespace | -| `--per-chunk` | | off | Per-chunk upsert instead of batch index | -| `--db-path ` | | default | Override LanceDB path | - -**Requires:** `rmcp-memex` binary in PATH. - -**Example:** -```bash -aicx memex-sync --namespace ai-contexts -aicx memex-sync --per-chunk --namespace codescribe-sessions -``` - ---- - -## aicx list - -Discover available AI agent session sources on this machine. No flags. - -**Output:** -``` -[claude] ~/.claude/projects (N sessions, X.X MB) -[codex] ~/.codex (N sessions, X.X MB) -[gemini] ~/.gemini/tmp (N sessions, X.X MB) -``` - ---- - -## aicx refs - -List stored context files from central store, filtered by recency. - -| Flag | Short | Default | Description | -|------|-------|---------|-------------| -| `--hours ` | `-H` | 48 | File mtime filter | -| `--project ` | `-p` | all | Project filter | - -**Output:** One file path per line. - -**Example:** -```bash -aicx refs -H 72 -p CodeScribe -``` - ---- - -## aicx state - -Manage dedup hashes, watermarks, and run history (`~/.ai-contexters/state.json`). - -| Flag | Short | Description | -|------|-------|-------------| -| `--info` | | Show state statistics | -| `--reset` | | Reset dedup hashes (all or per-project) | -| `--project ` | `-p` | Scope reset to specific project | - -**Examples:** -```bash -aicx state --info -aicx state --reset -p CodeScribe -aicx state --reset # reset all -``` - ---- - -## aicx init - -Bootstrap `.ai-context/` workspace and optionally launch agent. - -| Flag | Short | Default | Description | -|------|-------|---------|-------------| -| `--project ` | `-p` | auto-detected | Project name override | -| `--agent ` | `-a` | interactive | Agent selection | -| `--model ` | | agent default | Model override | -| `--hours ` | `-H` | 4800 (~200 days) | Context horizon | -| `--max-lines ` | | 1200 | Max lines per section | -| `--user-only` | | off | Exclude assistant messages from context | -| `--action ` | | none | Action/focus appended to prompt | -| `--agent-prompt ` | | none | Additional prompt text (verbatim) | -| `--agent-prompt-file ` | | none | Load additional prompt from file | -| `--no-run` | | off | Build context/prompt only, don't launch agent | -| `--no-confirm` | | off | Skip interactive confirmation | -| `--no-gitignore` | | off | Don't auto-modify .gitignore | - -**Pipeline steps:** -1. Detect git root -2. `loct auto` (indexing) -3. `loct --for-ai` (snapshot) -4. Extract context (memories from sessions) -5. Build composite prompt -6. Dispatch agent (if not `--no-run`) - -**Requires:** `loct` in PATH (or `LOCT_BIN` env var). - -**Examples:** -```bash -aicx init --agent codex --no-confirm --action "Audit memory and propose next steps" -aicx init --no-run --action "Review auth module" -aicx init --agent claude --agent-prompt-file ./custom-rules.md --no-confirm -aicx init -p CodeScribe --agent codex -H 720 --action "Full refactor plan" -``` - ---- - -For storage layout details, see `references/architecture.md`. - ---- - -*Created by vetcoders (c)2026* diff --git a/archive/skills/bravesearch/SKILL.md b/archive/skills/bravesearch/SKILL.md deleted file mode 100644 index c60c01c2..00000000 --- a/archive/skills/bravesearch/SKILL.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -name: brave-search -description: Search the web using Brave Search API. Use when you need web search results with better control than built-in WebSearch — supports language filtering, configurable result count, and returns structured results. Prefer this over WebSearch for research tasks. ---- - -# Brave Search Skill - -## When to Use - -Use this skill instead of `WebSearch` when: -- You need web search results for research or current information -- You want to control result count or language -- Built-in WebSearch is rate-limited or returning poor results - -## How to Search - -Run the Python script via Bash tool: - -```bash -python3 ~/.claude/skills/bravesearch/brave_search.py "your search query" -``` - -### Options - -- `--count N` or `-c N` — number of results (default: 8, max: 20) -- `--lang LANG` or `-l LANG` — search language code (e.g., `pl`, `en`, `de`) - -### Examples - -```bash -# Basic search -python3 ~/.claude/skills/bravesearch/brave_search.py "Apple SpeechAnalyzer API 2025" - -# Polish language search, 5 results -python3 ~/.claude/skills/bravesearch/brave_search.py "transkrypcja mowy CoreML" -l pl -c 5 - -# Multiple word query -python3 ~/.claude/skills/bravesearch/brave_search.py "Rust FFI Swift bridging macOS" -``` - -## Output Format - -Results are numbered with title, URL, and description: - -``` -[1] Title of Result - https://example.com/page - Description of the page content - -[2] ... -``` - -News results (if available) are appended at the end. - -## Important - -- Always include source URLs in your response when using search results -- This skill uses the Brave Search API (free tier, 2000 queries/month) -- No dependencies beyond Python 3 stdlib (urllib, json) -- API key is embedded in the script — do not share the script publicly diff --git a/archive/skills/docs/index.html b/archive/skills/docs/index.html deleted file mode 100644 index bfd03511..00000000 --- a/archive/skills/docs/index.html +++ /dev/null @@ -1,632 +0,0 @@ - - - - - -VetCoders Skills Suite — Agent Workflow for Production-Ready Software - - - - - - - -
-
-
Claude Code Skills Suite
-

VetCoders
Skills Suite

-

- Six skills that take AI agents from blind coding to shipped products. - The complete pipeline from context bootstrap to marketplace launch. -

-

- "The antidote is not more tools. It is a decision: choose what ships, and finish it. All of it. Not just the code." -

-
-
- - -
-
-
6
-
Skills
-
-
-
3
-
Phases
-
-
-
98%
-
Completion with loctree
-
-
-
0 → 1
-
From code to market
-
-
- - -
-
-

The Pipeline

-

Each skill feeds context to the next. No blind implementation. No packaging gap.

-
- -
- - -
-
01
-
-
Memory + Eyes
-

vetcoders-init

-

- Bootstrap every session with two layers of context: Memory from - ai-contexters (what was done before) and Eyes from loctree MCP - (what the code looks like now). The forcing function that prevents blind coding. -

-
- ai-contexters extraction - loctree repo-view - situational report - subagent preamble -
-
-
- - -
-
02
-
-
Examine · Research · Implement
-

vetcoders-workflow

-

- The ERi Pipeline. Three phases that chain structural code intelligence, ground - truth research, and parallel agent delegation. Each phase accumulates artifacts - (CONTEXT.md, RESEARCH.md, reports/) for the next. -

-
- loctree deep examination - brave-search + Context7 - phase gates - artifact accumulation -
-
-
- - -
-
03
-
-
Parallel Delegation
-

vetcoders-subagents

-

- Spawn a fleet of subagents with precise plans. Canonical osascript Terminal spawn - for clean environments. Plans in .ai-agents/plans/, reports in - .ai-agents/reports/. Living tree rule mandatory in every prompt. -

-
- osascript spawn - Codex + Claude CLI - Vibecrafting methodology - living tree rule -
-
-
- - -
-
04
-
-
Post-Implementation Audit
-

vetcoders-followup

-

- Strict chain: init → workflow → subagents → synthesis. - Validates subagent claims against real code. P0/P1/P2 severity model. - Ends with GO / GO-WITH-CAVEATS / NO-GO verdict. -

-
- severity model P0-P2 - loctree + semgrep gates - readiness verdict - confidence scoring -
-
-
- - -
-
05
-
-
Definition of Undone NEW
-

vetcoders-dou

-

- The completion oracle. Audits the entire product surface — not just code. - Crawls URLs, checks repo governance, verifies install paths, measures the gap - between internal capability and external visibility. Produces the Undone Matrix - and Plague Score. -

-
- URL crawling - SEO audit - install path verification - Undone Matrix - Plague Score 0-100 -
-
-
- - -
-
06
-
-
The Antidote NEW
-

vetcoders-hydrate

-

- Takes DoU findings and executes the packaging gap. Generates LICENSE, - CONTRIBUTING, CI workflows, marketplace listings, SEO meta tags, - distribution artifacts, and onboarding content. The terminal skill that - crosses the boundary from code to market. -

-
- repo governance - distribution packaging - SEO hydration - marketplace listings - "Done Done" checklist -
-
-
- -
-
- - -
-
-vetcoders-init vetcoders-workflow vetcoders-subagents vetcoders-followup - - vetcoders-dou - - vetcoders-hydrate - - vetcoders-dou (verify) -
-
- - -
-
-

The Definition of Undone

-
- AI agents have solved the hardest part of software creation: making the thing work. - They have not yet solved the second hardest part: making the thing reachable. - Until they do — or until human-agent teams learn to ask for both — - the plague will produce its distinctive signature: repositories full of brilliance, - and markets full of silence. -
-
- This suite is the habit of asking. -
-
- vetcoders — founders and their AI agents -
-
-
- - -
-

Get Started

-
- $ git clone https://github.com/VetCoders/vetcoders-skills-suite -
-

- Copy skills to ~/.claude/skills/ or install as a Claude Code plugin. -

-
- -
- Vibecrafted with AI Agents by VetCoders © 2026 -  ·  - Built with Claude by Anthropic -
- - - diff --git a/archive/skills/loctree/SKILL.md b/archive/skills/loctree/SKILL.md deleted file mode 100644 index f2d48a46..00000000 --- a/archive/skills/loctree/SKILL.md +++ /dev/null @@ -1,103 +0,0 @@ ---- -name: loctree -description: > - A holographic map of code for AI agents. Use loctree-mcp as the primary - mapping layer before any edit, delete, or refactor. Build context with - repo-view/focus/slice/impact/find/follow, then use grep only for local detail. ---- - -# Loctree — A holographic map of code for AI agents - -Static code analysis built for agentic codebase context management. -Find Dead Parrots, Ministry of Silly Exports, and 14k-file features -before they haunt you. - -Use loctree MCP tools as the default discovery layer — **before reading files manually**. - -## Hard Rules - -1. **No edit-before-map**: do not patch code until `repo-view -> focus -> slice`. -2. **No blind delete**: run `impact(file)` before deleting or collapsing modules. -3. **No duplicate symbols**: run `find(name)` before adding functions/types/components. -4. **Scope changes**: prefer feature-scoped changes over global overrides. -5. **Treat high-impact files as risky**: add verification steps before commit. -6. **Grep is local detail only**: never use grep/rg as primary mapping layer. - -## Standard Workflow (Required) - -### 1) Map repo -- Run `repo-view(project)` once per task. -- Note: top hubs, dead exports, cycles, twins, health indicators. - -### 2) Constrain scope -- Run `focus(project, directory)` for each target module (1-3 dirs max). -- Capture external consumers and dependencies. - -### 3) File-level context before edit -- For every file to modify, run `slice(file, consumers=true)`. -- Record: direct dependencies, direct consumers, likely transitive risk. - -### 4) Change risk check -- For each candidate high-impact file, run `impact(file)`. -- If risk is high, isolate changes (new variant, scoped class, adapter layer). - -### 5) Symbol check before creating -- Run `find(name)` for new types/functions/components/keys. -- Supports regex: `find("SymbolA|SymbolB")`. -- Reuse existing patterns when available. - -### 6) Pursue signals -- Run `follow(scope)` to drill into problems flagged by repo-view. -- Scopes: `dead`, `cycles`, `twins`, `hotspots`, or `all`. -- Returns field-level detail with actionable recommendations. - -### 7) Line-level read -- Use `grep`, `rg`, `cat` only after steps 1-6. - -### 8) Validation -- Re-run targeted tests/lint/typecheck. -- For UI: add visual sanity check across themes/modes. - -## Tools Reference - -| Tool | When | What you get | -|------|------|-------------| -| `repo-view(project)` | Start of task | Files, LOC, languages, health, top hubs | -| `slice(file)` | Before modifying | File + dependencies + consumers | -| `find(name)` | Before creating | Symbol search with regex, multi-query | -| `impact(file)` | Before deleting | Direct + transitive consumers (blast radius) | -| `focus(directory)` | Module deep-dive | Files, internal edges, external deps | -| `tree(project)` | Layout overview | Directory structure with LOC counts | -| `follow(scope)` | After repo-view | Field-level signals: dead, cycles, twins, hotspots | - -All tools accept `project` parameter (default: current dir). -First use auto-scans if no snapshot exists. Subsequent calls use cache (instant). - -## Output Contract (for agents) - -Before refactor, report: -1. **Repo Summary** (3-5 bullets from `repo-view`) -2. **Scope** (focused dirs and why) -3. **Critical Files** (from `slice`) -4. **Risk Map** (from `impact`) -5. **Plan** (ordered phases + rollback points) - -After implementation, report: -1. **Changed Files** -2. **Why** -3. **Validation** -4. **Residual Risk** - -## Anti-Patterns (Disallowed) - -- Running broad `grep` first and editing based on partial matches. -- Deleting/renaming files without `impact`. -- Adding new symbols without `find`. -- Global overrides to fix local issues. -- Skipping `slice` because "it's a small change". - -## Portable by Design - -- No shell hooks, custom wrappers, or local plugin scripts required. -- No repo-specific paths assumed beyond current workspace. -- If loctree-mcp unavailable: fallback to `rg --files` + `rg -n` + manual dependency tracing. diff --git a/archive/skills/loctree/references/commands.md b/archive/skills/loctree/references/commands.md deleted file mode 100644 index 3a9c2ebe..00000000 --- a/archive/skills/loctree/references/commands.md +++ /dev/null @@ -1,127 +0,0 @@ -# Loctree CLI Command Reference - -## Quick Reference - -| Command | Purpose | Speed | -|---------|---------|-------| -| `loct --for-ai` | Codebase overview | ~500ms | -| `loct find ` | Symbol search | ~280ms | -| `loct impact ` | Change impact | ~50ms | -| `loct slice ` | Dependency slice | ~80ms | -| `loct health` | Health report | ~370ms | -| `loct focus ` | Directory analysis | ~60ms | - -## Detailed Commands - -### loct --for-ai - -Get comprehensive codebase overview optimized for AI understanding. - -```bash -loct --for-ai -``` - -**Output includes:** -- Project structure -- Entry points -- Key modules -- Health summary - -### loct find - -Search for symbol definitions with semantic matching. - -```bash -loct find "MySymbol" # Single symbol -loct find "A|B|C" # Multi-query (OR) -loct find "handle.*Click" # Pattern (transformed to multi-query) -``` - -**Options:** -- `--limit N` - Limit results (default: 50) -- `--json` - JSON output - -### loct impact - -Analyze what files would be affected by changes. - -```bash -loct impact src/utils/helpers.ts -loct impact src/api/ # Directory impact -``` - -**Output:** -- Direct dependents -- Transitive dependents -- Risk assessment - -### loct slice - -Get minimal dependency context for a file. - -```bash -loct slice src/components/Button.tsx -``` - -**Output:** -- Direct imports -- Transitive imports -- Suggested reading order - -### loct health - -Codebase health analysis. - -```bash -loct health -loct health --json # JSON output -``` - -**Detects:** -- Dead exports (unused code) -- Circular dependencies -- Duplicate exports (twins) -- Barrel chaos - -### loct query - -Low-level query interface. - -```bash -loct query who-imports src/auth.ts # What imports this? -loct query where-symbol MyClass # Where is this symbol? -loct query why-import A.ts B.ts # Why does A import B? -``` - -### loct focus - -Analyze a specific directory. - -```bash -loct focus src/api/ -loct focus src/components/ --depth 2 -``` - -### loct commands - -List Tauri commands (for Tauri projects). - -```bash -loct commands -loct commands --unused # Find unused commands -``` - -## Output Formats - -Most commands support: -- Default: Human-readable -- `--json`: JSON output -- `--for-ai`: AI-optimized format - -## Environment Variables - -- `LOCT_HOOK_LOG_FILE` - Hook log location (default: `$CLAUDE_LOCAL_DIR/logs/loct-hook.log`) - ---- - -*See full documentation at https://github.com/Loctree/loctree-suite* diff --git a/archive/skills/pdf/LICENSE.txt b/archive/skills/pdf/LICENSE.txt deleted file mode 100644 index 13e25df8..00000000 --- a/archive/skills/pdf/LICENSE.txt +++ /dev/null @@ -1,201 +0,0 @@ -Apache License -Version 2.0, January 2004 -http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf of - any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don\'t include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [yyyy] [name of copyright owner] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/archive/skills/pdf/SKILL.md b/archive/skills/pdf/SKILL.md deleted file mode 100644 index fd5d5605..00000000 --- a/archive/skills/pdf/SKILL.md +++ /dev/null @@ -1,67 +0,0 @@ ---- -name: "pdf" -description: "Use when tasks involve reading, creating, or reviewing PDF files where rendering and layout matter; prefer visual checks by rendering pages (Poppler) and use Python tools such as `reportlab`, `pdfplumber`, and `pypdf` for generation and extraction." ---- - - -# PDF Skill - -## When to use -- Read or review PDF content where layout and visuals matter. -- Create PDFs programmatically with reliable formatting. -- Validate final rendering before delivery. - -## Workflow -1. Prefer visual review: render PDF pages to PNGs and inspect them. - - Use `pdftoppm` if available. - - If unavailable, install Poppler or ask the user to review the output locally. -2. Use `reportlab` to generate PDFs when creating new documents. -3. Use `pdfplumber` (or `pypdf`) for text extraction and quick checks; do not rely on it for layout fidelity. -4. After each meaningful update, re-render pages and verify alignment, spacing, and legibility. - -## Temp and output conventions -- Use `tmp/pdfs/` for intermediate files; delete when done. -- Write final artifacts under `output/pdf/` when working in this repo. -- Keep filenames stable and descriptive. - -## Dependencies (install if missing) -Prefer `uv` for dependency management. - -Python packages: -``` -uv pip install reportlab pdfplumber pypdf -``` -If `uv` is unavailable: -``` -python3 -m pip install reportlab pdfplumber pypdf -``` -System tools (for rendering): -``` -# macOS (Homebrew) -brew install poppler - -# Ubuntu/Debian -sudo apt-get install -y poppler-utils -``` - -If installation isn't possible in this environment, tell the user which dependency is missing and how to install it locally. - -## Environment -No required environment variables. - -## Rendering command -``` -pdftoppm -png $INPUT_PDF $OUTPUT_PREFIX -``` - -## Quality expectations -- Maintain polished visual design: consistent typography, spacing, margins, and section hierarchy. -- Avoid rendering issues: clipped text, overlapping elements, broken tables, black squares, or unreadable glyphs. -- Charts, tables, and images must be sharp, aligned, and clearly labeled. -- Use ASCII hyphens only. Avoid U+2011 (non-breaking hyphen) and other Unicode dashes. -- Citations and references must be human-readable; never leave tool tokens or placeholder strings. - -## Final checks -- Do not deliver until the latest PNG inspection shows zero visual or formatting defects. -- Confirm headers/footers, page numbering, and section transitions look polished. -- Keep intermediate files organized or remove them after final approval. diff --git a/archive/skills/pdf/agents/openai.yaml b/archive/skills/pdf/agents/openai.yaml deleted file mode 100644 index fe2876a6..00000000 --- a/archive/skills/pdf/agents/openai.yaml +++ /dev/null @@ -1,5 +0,0 @@ -interface: - display_name: "PDF Skill" - short_description: "Create, edit, and review PDFs" - icon_large: "./assets/pdf.png" - default_prompt: "Create, edit, or review this PDF and summarize the key output or changes." diff --git a/archive/skills/pdf/assets/pdf.png b/archive/skills/pdf/assets/pdf.png deleted file mode 100644 index dd16ba28..00000000 Binary files a/archive/skills/pdf/assets/pdf.png and /dev/null differ diff --git a/archive/skills/vetcoders-decorate/SKILL.md b/archive/skills/vetcoders-decorate/SKILL.md deleted file mode 100644 index 776f640d..00000000 --- a/archive/skills/vetcoders-decorate/SKILL.md +++ /dev/null @@ -1,198 +0,0 @@ ---- -name: vetcoders-decorate -version: 1.1.0 -description: > - Visual polish and micro-interaction skill. Detects the user's existing - design language (colors, fonts, theme) and proposes tasteful enhancements: - hover effects, scroll behaviors, parallax, animations, responsive - refinements. Never overrides the user's style -- always works WITHIN it. - When no existing style is detected, offers to scaffold one. - Trigger phrases: "decorate", "make it look good", "add polish", - "smaczki", "micro-interactions", "udekoruj", "dopracuj wizualnie", - "curb appeal", "interactive demo", "animate", "add hover effects", - "make it feel nice", "visual polish". ---- - -# vetcoders-decorate -- Smaczki for Shipped Products - -> "Never change the user's colors. Change how their colors FEEL." - -The Decorate skill adds visual micro-interactions and polish to -existing projects. It respects the user's design choices and works -within their established palette, fonts, and layout. The skill -PROPOSES enhancements and lets the user pick what to apply. - -## Core Rule: Detect, Don't Dictate - -Before decorating anything, run style detection: - -``` -1. SCAN existing CSS variables, theme files, brand colors -2. IDENTIFY the user's palette (primary, secondary, accent, bg, text) -3. IDENTIFY the user's font stack (headings, body) -4. IDENTIFY the user's theme (dark/light/auto) -5. PROPOSE smaczki using THEIR tokens, not ours -6. ASK which enhancements to apply -7. IMPLEMENT only approved changes -``` - -If no existing style is detected (raw HTML, no CSS vars, default -browser styles), offer to scaffold a minimal design system first -- -but present options, don't assume. - -## When To Use - -- User says "make it look good" or "add some polish" -- After implementation is done and user wants visual refinement -- For showcase pages, demos, landing pages -- When the product works but feels "flat" or "like a prototype" -- In the VetCoders pipeline: after `dou`, before `hydrate` - -## Pipeline Position - -``` -Phase 1 (Build) Phase 2 (Converge) Phase 3 (Ship) -init -> workflow -> marbles loop -> dou -> [DECORATE] -> hydrate -followup ^^^^^^^^^^^ -``` - -## What Decorate Proposes - -The skill scans the project and proposes from this menu of smaczki. -The user picks which ones to apply. Agent can also invent new ones -that fit the project's character. - -### Category 1: Hover and Focus Effects - -- **3D Card Tilt** -- cards follow cursor with perspective transform -- **Glow on Hover** -- subtle box-shadow using user's accent color -- **Scale + Lift** -- translateY(-2px) + scale(1.01) on interactive elements -- **Border Color Shift** -- border transitions to accent on hover -- **Magnetic Cursor** -- elements slightly attract toward cursor - -### Category 2: Scroll Behaviors - -- **Scroll Progress Bar** -- thin accent-color line at viewport top -- **Fade-up on Scroll** -- elements reveal with translateY + opacity -- **Parallax Layers** -- background elements shift slower than foreground -- **Sticky Section Headers** -- headers pin during section scroll -- **Counter Animation** -- numbers count up when scrolled into view - -### Category 3: Canvas and Animation - -- **Solitaire Board** -- hex-grid marble visualization (VetCoders signature) -- **Particle Background** -- subtle floating particles using user's palette -- **Gradient Mesh** -- animated gradient background using user's colors -- **Loading Skeleton** -- content placeholders with shimmer animation -- **Typed Text** -- typewriter effect on hero headlines - -### Category 4: Interaction Details - -- **Content Selection Control** -- user-select:none on UI, text on code -- **Smooth Scroll** -- scroll-behavior:smooth on html -- **Active States** -- :active transforms for tactile button feedback -- **Focus Rings** -- accessible custom focus styles using accent color -- **Transition Timing** -- consistent easing curves across all animations - -### Category 5: Agent's Choice - -The agent should ALSO propose something unique and unexpected -that fits the project's specific character. Examples: - -- A project about music? Audio-reactive hover effects. -- A dashboard? Subtle data-point highlights on hover. -- A portfolio? Image parallax within cards. -- Documentation? Smooth code block copy animations. - -The best smaczek is one the user didn't think to ask for. - -## Style Detection Reference - -How to detect and extract the user's design language: - -``` -CSS Variables: grep for --primary, --accent, --bg, --text, --font -Tailwind Config: read tailwind.config.js for theme.extend.colors -CSS Files: extract most-used colors (hex/rgb/hsl) -HTML: check tags for Google Fonts -Package.json: check for UI frameworks (shadcn, MUI, Chakra) -Existing Hover: check what :hover styles already exist -Theme Mode: check for prefers-color-scheme or .dark class -``` - -Use the detected values as your working palette. Map them to roles: -- Primary/accent = CTAs, highlights, progress bars -- Secondary = hover states, borders, subtle effects -- Background = canvas backgrounds, overlay colors -- Text = any generated text elements - -## VetCoders Reference Palette (fallback only) - -When no user style exists and user wants a suggestion: - -``` -Orange: #d97757 Blue: #6a9bcc Green: #788c5d -Dark: #141413 Light: #faf9f5 Mid: #b0aea5 -Fonts: Poppins (headings) + Lora (body) -``` - -This is OUR palette for OUR products. Never apply it to someone -else's project unless they explicitly ask for it. - -## Implementation Pattern - -``` -Step 1: Style Detection - - Scan CSS vars, config files, stylesheets - - Extract palette, fonts, theme mode - - Note existing hover/animation patterns - -Step 2: Proposal - - List 3-5 specific smaczki from the menu above - - Include 1 agent's choice (something creative) - - Show what each would look like with THEIR colors - - Ask user to pick - -Step 3: Implementation - - Apply only selected enhancements - - Use user's CSS variables/tokens throughout - - Add new CSS classes (never modify existing ones) - - Performance: requestAnimationFrame, passive listeners, will-change - -Step 4: Review - - Show before/after - - Ask if any adjustments needed - - Verify no user styles were overridden -``` - -## Decoration Checklist - -Before marking decoration complete: - -``` -[ ] User's existing styles preserved (no overrides) -[ ] Enhancements use user's palette/tokens -[ ] user-select: none on UI chrome, text on copyable content -[ ] Responsive behavior maintained -[ ] Animations use requestAnimationFrame where applicable -[ ] Scroll listeners are passive -[ ] No emojis added (unless user's project uses them) -[ ] Accessibility: focus states, reduced-motion support -[ ] Performance: will-change on animated elements, sprite caching -``` - -## Philosophy - -Decoration is not about YOUR taste. It is about making the user's -taste FEEL more polished. - -A good smaczek is invisible until you remove it. -Then the whole page feels flat. - -The agent's job: detect what's there, imagine what could be there, -propose it, and implement only what the user wants. - ---- - -*Phase 3 -- Ship (dou -> decorate -> hydrate)* -*Vibecrafted with AI Agents by VetCoders (c)2026 VetCoders* diff --git a/archive/skills/vetcoders-dou/SKILL.md b/archive/skills/vetcoders-dou/SKILL.md deleted file mode 100644 index 41466758..00000000 --- a/archive/skills/vetcoders-dou/SKILL.md +++ /dev/null @@ -1,265 +0,0 @@ ---- -name: vetcoders-dou -version: 1.0.0 -description: > - Definition of Undone audit skill. Runs a systematic gap analysis across the - ENTIRE product surface — not just code. Crawls public URLs, audits repo - governance, verifies install paths, checks SEO/discoverability, and measures - the gap between internal capability and external visibility. - Trigger phrases: "definition of undone", "dou audit", "co jest niedokończone", - "what's undone", "product surface audit", "completion audit", "plague check", - "hydration check", "are we shippable", "czy jesteśmy gotowi", "gap analysis", - "co brakuje do launchu", "readiness audit", "packaging gap". ---- - -# vetcoders-dou — Definition of Undone Audit - -> "Green gates are necessary, not sufficient. Runtime truth wins." -> "The engineering is done. The packaging is not." - -The DoU skill answers the question no agent asks by default: -**"What remains incomplete across the entire product surface, and why?"** - -This is the completion oracle described in the DoU manifesto — not a one-off report, -but a structured, repeatable audit that measures the gap between "it runs on my machine" -and "someone can buy this." - -## When To Use - -- Before any launch, marketplace submission, or PR announcement -- After major implementation cycles (post vetcoders-followup) -- When the team asks "are we ready?" or "co jeszcze brakuje?" -- Periodic health check (recommended: every 2 weeks) -- When the feeling of progress exceeds the reality of completion - -## The Undone Matrix - -Every project is scored on three axes: - -| Axis | Question | Tools | -|------|----------|-------| -| **Repo Health** | Does the code work? | loctree, cargo/npm, CI | -| **Web Presence** | Can someone find and understand it? | WebFetch, brave-search, curl | -| **Commercial Readiness** | Can someone adopt or buy it? | Manual checklist + automated probes | - -Scoring: [OK] Production-ready | [PARTIAL] Exists but incomplete | [MISSING] Absent - -## Audit Sequence - -### Phase 1: Repo Governance Audit - -Check repository health beyond code quality: - -``` -Required files: -- [ ] LICENSE (not just exists — correct license for intended use) -- [ ] README.md (with install, usage, and contributing sections) -- [ ] CONTRIBUTING.md (or contributing section in README) -- [ ] CHANGELOG.md (or GitHub Releases with notes) -- [ ] CI configuration (.github/workflows/ or equivalent) -- [ ] Issue templates (.github/ISSUE_TEMPLATE/) -- [ ] Security policy (SECURITY.md) -``` - -**Automated checks:** -```bash -# File existence -for f in LICENSE README.md CONTRIBUTING.md CHANGELOG.md SECURITY.md; do - [ -f "$ROOT/$f" ] && echo "[PASS] $f" || echo "[FAIL] $f MISSING" -done - -# CI presence -[ -d "$ROOT/.github/workflows" ] && echo "[PASS] CI workflows" || echo "[FAIL] No CI" - -# Issue templates -[ -d "$ROOT/.github/ISSUE_TEMPLATE" ] && echo "[PASS] Issue templates" || echo "[FAIL] No issue templates" -``` - -**Loctree structural check:** -``` -repo-view(project) → extract: -- Dead exports count (should be 0 for release) -- Cycle count (should be 0 or documented) -- Health score -``` - -### Phase 2: Install Path Verification - -The "can a stranger use this" test: - -``` -For CLI tools: -- [ ] Published to package registry (crates.io / npm / PyPI) -- [ ] Version badge matches actual published version -- [ ] Install command works: cargo install / npm i -g / pip install -- [ ] Binary runs after install without dev toolchain -- [ ] --help produces useful output -- [ ] --version matches published version - -For desktop apps: -- [ ] DMG/MSI/AppImage available -- [ ] Homebrew formula or equivalent -- [ ] Code signing / notarization (macOS) -- [ ] No dev toolchain required to install - -For web apps: -- [ ] URL is accessible -- [ ] Loads in <3 seconds -- [ ] Works without JavaScript (or graceful fallback message) -- [ ] Mobile responsive -``` - -### Phase 3: Discoverability Audit - -The "can Google find us" test: - -**URL Crawl (for each public URL):** -``` -1. WebFetch(url, "Extract: page title, meta description, h1, main content summary, - any CTA buttons, pricing info. Report if page appears empty or JS-only.") - -2. Check for SSR/static content: - - curl -s | grep -c ' | grep -i 'strict-transport\|x-frame\|content-security\|x-content-type' - -4. Open Graph / social sharing: - - curl -s | grep -i 'og:title\|og:description\|og:image\|twitter:card' -``` - -**SEO basics:** -``` -- [ ] Title tag present and descriptive (not "React App") -- [ ] Meta description present -- [ ] H1 exists and matches page purpose -- [ ] Content visible without JavaScript -- [ ] robots.txt allows indexing -- [ ] sitemap.xml exists -- [ ] No duplicate content across domains (e.g., loct.io vs loctree.io) -``` - -**Search presence:** -``` -brave-search("") → check if product appears in top 20 -brave-search(" ") → check category ranking -brave-search("site:") → check indexed page count -``` - -### Phase 4: Commercial Surface Audit - -The "stranger to customer" path test: - -``` -Discovery → Landing → Understanding → Trial → Adoption → Payment - -For each stage, verify: -- [ ] Discovery: Can be found via search (Phase 3) -- [ ] Landing: Page loads, content visible, professional appearance -- [ ] Understanding: Features, use cases, and value prop are clear within 30s -- [ ] Trial: Demo, free tier, or try-before-buy available -- [ ] Adoption: Install/signup path works end-to-end -- [ ] Payment: Pricing page exists (if commercial) - -Missing stages = holes in the funnel. Report each gap. -``` - -### Phase 5: Marketplace Readiness (if targeting Claude/AI ecosystem) - -``` -Claude Code Skills Marketplace: -- [ ] SKILL.md with proper frontmatter (name, version, description) -- [ ] Description contains trigger phrases (EN + PL if applicable) -- [ ] References directory with supporting docs -- [ ] No hardcoded paths (uses $ROOT or relative paths) -- [ ] Works without optional dependencies (graceful fallback) -- [ ] Tested on clean install (no assumed global state) - -GitHub Marketplace / crates.io / npm: -- [ ] Package metadata complete (description, keywords, homepage, repository) -- [ ] Categories/tags set correctly -- [ ] Screenshots or demo GIF in README -- [ ] License compatible with marketplace requirements -``` - -## Output Format - -### DoU Report (Mandatory Structure) - -```markdown -# Definition of Undone: -Date: -Auditor: - -## Executive Summary -<2-3 sentences: what's the gap between code and market?> - -## Undone Matrix -| Project | Repo | Web | Commercial | Critical Gap | -|---------|------|-----|------------|-------------| -| | [OK]/[PARTIAL]/[MISSING] | [OK]/[PARTIAL]/[MISSING] | [OK]/[PARTIAL]/[MISSING] | | - -## Findings by Severity - -### P0 — Ship Blockers - - -### P1 — Credibility Gaps - - -### P2 — Polish Items - - -## The Funnel Test -Discovery → Landing → Understanding → Trial → Adoption → Payment - - -## Hydration Priorities - - -## Plague Score -<0-100: how affected is this project by the Always-in-Production Plague?> -0 = fully shipped and discoverable -100 = technically brilliant, commercially invisible -``` - -## Integration with VetCoders Pipeline - -``` -Phase 1 — Build: init → workflow → followup - ↓ -Phase 2 — Converge: marbles ↻ (loop until P0=P1=P2=0) - ↓ -Phase 3 — Ship: dou → hydrate -``` - -DoU findings feed directly into `vetcoders-hydrate` as prioritized tasks. - -## Anti-Patterns - -- Running DoU only on code (it's a PRODUCT surface audit, not a code audit) -- Treating [OK] repo health as proof of readiness (the whole point of DoU) -- Auditing without actually crawling URLs (trust no assumption) -- Skipping the install path test ("it works on my machine" is the plague) -- Reporting without severity ranking (everything feels equally important) -- Not re-running after hydration (verify the fix) - -## The Plague Diagnostic - -If you observe this pattern, the project has the plague: -1. Tests pass [PASS] -2. Architecture is sound [PASS] -3. README exists [PASS] -4. Nobody can find it from Google [FAIL] -5. Nobody can install it without a toolchain [FAIL] -6. Nobody can pay for it [FAIL] - -Items 4-6 are the Definition of Undone. - ---- - -*"The antidote is not more tools. It is not another framework.* -*It is a decision: choose what ships, and finish it. All of it. Not just the code."* - -*Vibecrafted with AI Agents by VetCoders (c)2026 VetCoders* diff --git a/archive/skills/vetcoders-followup/SKILL.md b/archive/skills/vetcoders-followup/SKILL.md deleted file mode 100644 index a785e57b..00000000 --- a/archive/skills/vetcoders-followup/SKILL.md +++ /dev/null @@ -1,207 +0,0 @@ ---- -name: vetcoders-followup -version: 1.0.0 -description: > - Production follow-up audit skill for VetCoders. Runs a strict chain: - vetcoders-init -> vetcoders-workflow -> vetcoders-spawn, then synthesizes - implementation gaps, readiness risks, quality gate outcomes, and next actions - before hands-on build/testing. ---- - -# vetcoders-followup - -Follow-up skill for post-implementation review of agent-delivered work. -Use this when the team asks for "follow-up check", "czy sa jeszcze luki", -"readiness before hands-on", or "audit this implementation after plan execution". - -## Core Contract - -Always run this sequence: -1. `vetcoders-init` (memory + structure baseline) -2. `vetcoders-workflow` (Examine -> optional Research -> Implement context) -3. `vetcoders-spawn` or `vetcoders-implement` (parallel delegated audits) -4. Final synthesis by primary agent (you) - -Do not skip sequence unless user explicitly opts out. - -## Required Inputs - -- Repo root path (`$ROOT`) -- Pipeline slug (for example `YYYYMMDD_followup-agent2`) -- Target scope (modules/features touched today) -- Quality gate commands for this repo - -## Non-Negotiables - -- Use loctree MCP as first exploration layer; fail-fast if snapshot is stale. -- Use semgrep as first security gate. -- Rust repos: run `cargo clippy -- -D warnings`. -- Run tests relevant to touched surfaces plus at least one cross-pipeline e2e test. -- Findings are primary output, sorted by severity (`P0`, `P1`, `P2`). -- Every finding must include concrete file references. - -## Phase A - Bootstrap (vetcoders-init) - -1. Extract context memory: -```bash -aicx all -p --incremental -aicx refs -H 168 -p -``` -2. Map structure: -- `repo-view(project)` -- `focus(directory)` for 1-3 target dirs -- `follow(scope="all")` when risk signals appear -3. Produce situational summary with: -- open signals from memory -- repo health and top hubs -- target scope and risks - -## Phase B - Workflow Context (vetcoders-workflow) - -Create pipeline artifacts: -- `.ai-agents/pipeline//CONTEXT.md` -- `.ai-agents/pipeline//RESEARCH.md` -- `.ai-agents/pipeline//plans/` -- `.ai-agents/pipeline//reports/` - -`CONTEXT.md` must include: -- repo health -- critical files table -- risk map -- phase decision (research needed or not) - -`RESEARCH.md` should be concise and only cover unknowns that affect architecture, -runtime behavior, or production readiness. - -## Phase C - Delegation (vetcoders-spawn) - -Prepare at least 2 audit tracks: -1. Runtime/architecture audit -2. Hands-on readiness and gate audit - -### Mandatory preamble in each plan - -```text -You work on a living tree with Vibecrafting methodology, so concurrent changes are expected. -Adapt proactively and continue, but this is never permission to skip quality, security, or test gates. -Run required checks. If something is blocked, report the exact blocker and run the closest safe equivalent. -``` - -### Subagent plan skeleton - -```markdown -# Task: - -Goal: -- <1-3 bullets> - -Scope: -- In scope: -- Out of scope: - -Acceptance: -- [ ] -- [ ] -- [x] refinement - -Test gate: -- semgrep --config auto --error --quiet -- cargo clippy -- -D warnings -- - -Context: -- -``` - -### Spawn method - -Use canonical Terminal spawn (`osascript`) from `vetcoders-spawn`. -Write plans to `.ai-agents/.../plans/` and reports to `.ai-agents/.../reports/`. - -## Phase D - Follow-up Synthesis (Primary Agent) - -After reports arrive: -1. Validate subagent claims against real code (`slice/find/rg` + file reads). -2. Re-run mandatory gates on current tree. -3. Build one consolidated verdict: -- implementation gaps -- blockers vs caveats -- readiness score -- exact next fixes - -## Severity Model - -- `P0` - release/blocking issue (crash, compile break, wrong runtime path) -- `P1` - high risk / likely regression in production flows -- `P2` - quality/usability/observability gap, non-blocking - -## Output Format (Mandatory) - -Use this exact top-level structure in final response: - -```text -Current state: -Proposal: -Migration plan: -Quick win: -``` - -Then include: -- Findings list (P0/P1/P2, with file refs) -- Gate results (pass/fail + command) -- Hands-on readiness verdict (`GO`, `GO-WITH-CAVEATS`, `NO-GO`) -- Confidence score (0-100) - -## Ready-to-Use Prompts - -### Prompt 1 - Runtime audit subagent - -```text -Task: Follow-up runtime audit for Agent implementation - -Review runtime routing, tool execution path, fallback behavior, and persistence consistency. -Focus on whether new runtime is truly used in all intended paths. - -Deliver: -- P0/P1/P2 findings with file:line evidence -- Exact mismatch points between intended and actual runtime -- Minimal remediation sequence - -Run gates: -- semgrep --config auto --error --quiet -- cargo clippy -- -D warnings -``` - -### Prompt 2 - Hands-on readiness subagent - -```text -Task: Hands-on readiness follow-up audit - -Verify that codebase is ready for manual desktop testing: -- build/test gates -- operational assumptions (env/permissions) -- UX blockers for real-world session - -Deliver: -- blocker/caveat list -- readiness verdict and confidence score -- concrete smoke checklist for desktop test session - -Run gates: -- semgrep --config auto --error --quiet -- cargo clippy -- -D warnings -- targeted tests for touched modules -``` - -## Anti-Patterns - -- Treating green unit tests as production readiness proof. -- Reporting only summary without severity-ranked findings. -- Skipping file-level evidence. -- Running subagents without living-tree preamble. -- Ending without a clear `GO/NO-GO` recommendation. - ---- - -VetCoders follow-up principle: -"Green gates are necessary, not sufficient. Runtime truth wins." diff --git a/archive/skills/vetcoders-hydrate/SKILL.md b/archive/skills/vetcoders-hydrate/SKILL.md deleted file mode 100644 index 42d85305..00000000 --- a/archive/skills/vetcoders-hydrate/SKILL.md +++ /dev/null @@ -1,364 +0,0 @@ ---- -name: vetcoders-hydrate -version: 1.0.0 -description: > - Packaging and go-to-market hydration skill. Takes DoU audit findings and - executes the non-code work that bridges the gap between "it works" and - "someone can buy this." Generates marketplace listings, SEO fixes, - distribution artifacts, onboarding flows, and landing page content. - Trigger phrases: "hydrate", "package for market", "prepare for launch", - "przygotuj do launchu", "fix the packaging gap", "marketplace listing", - "nawodnij", "make it shippable", "go-to-market", "distribution", - "SEO fix", "landing page", "onboarding", "completion sprint". ---- - -# vetcoders-hydrate — The Antidote to Always-in-Production - -> "The code is dry — structurally complete but missing the fluid -> that makes it flow to users. Hydration means: make the path -> from stranger to user frictionless." - -The Hydrate skill is the packaging agent that DoU called for. -It treats "create a DMG installer" and "write SEO-friendly copy" -as first-class engineering tasks, not afterthoughts. - -## When To Use - -- After a `vetcoders-dou` audit identifies packaging gaps -- Before any marketplace submission or public launch -- When the team says "it works, now make it findable/installable/buyable" -- Periodic hydration sprint (recommended: pair with DoU every 2 weeks) -- When Plague Score > 40 - -## Hydration Domains - -### Domain 1: Repository Hydration - -Fix repo governance gaps identified by DoU: - -**File Generation:** -``` -For each missing file, generate contextually appropriate content: - -LICENSE: -- Detect project intent (commercial vs open-source vs dual) -- Generate appropriate license (MIT, Apache-2.0, or proprietary) - -CONTRIBUTING.md: -- Extract from existing README if present -- Include: setup, coding standards, PR process, code of conduct link -- Match repo language and toolchain - -CHANGELOG.md: -- Parse git log for unreleased changes -- Format as Keep a Changelog standard -- Include version headers matching published versions - -SECURITY.md: -- Standard responsible disclosure template -- Contact method (GitHub Security Advisories preferred) - -CI Workflows: -- Detect language → generate appropriate CI -- Rust: cargo check, clippy, test, fmt -- Node: lint, test, build -- Python: ruff, pytest -- Always include: dependency audit, license check -``` - -**Version Synchronization:** -```bash -# Find all version references and check consistency -grep -rn "version" Cargo.toml package.json pyproject.toml -# Compare with published versions -cargo search 2>/dev/null | head -1 -npm view version 2>/dev/null -# Compare with website badges/references -# Flag any mismatch as P1 -``` - -### Domain 2: Distribution Hydration - -Make the product installable without a dev toolchain: - -**CLI Tools (Rust):** -``` -- [ ] cargo install works -- [ ] GitHub Releases with prebuilt binaries (linux-x86_64, macos-arm64, macos-x86_64) -- [ ] Install script: curl -sSfL | sh -- [ ] Homebrew formula (tap or core) -- [ ] Shell completions generated and included - -Generate GitHub Actions release workflow: -- Cross-compile for targets -- Create GitHub Release with assets -- Update Homebrew formula automatically -``` - -**Desktop Apps (macOS):** -``` -- [ ] .app bundle with proper Info.plist -- [ ] DMG with background image and Applications symlink -- [ ] Code signing with Developer ID -- [ ] Notarization via notarytool -- [ ] Homebrew cask formula -- [ ] Sparkle or equivalent for auto-updates - -Template: create-dmg with: - --volname "" - --background "dmg-background.png" - --window-size 600 400 - --icon-size 100 - --app-drop-link 400 200 -``` - -**Web Apps:** -``` -- [ ] Dockerfile for containerized deployment -- [ ] docker-compose.yml for local preview -- [ ] Environment variable documentation (.env.example) -- [ ] Health check endpoint (/health or /api/health) -- [ ] Graceful shutdown handling -``` - -### Domain 3: Discoverability Hydration - -Fix SEO and web presence gaps: - -**SSR/Pre-rendering for SPA sites:** -``` -Problem: JS-rendered sites are invisible to crawlers. -Solutions (in order of preference): -1. Static pre-rendering at build time (best for landing pages) -2. SSR with hydration (for dynamic content) -3. Hybrid: static landing + SPA for app -4. Minimum: