Set this up with your own agent

Send your agent the recipes, then choose one workflow to build.

The stories explain what I built. The setup guide gives your agent the inputs, boundaries and checks needed to adapt those patterns to your own environment.

Start with the plain Markdown setup guide. It works without scripts or an account. Copy its URL into your agent and ask for one workflow.

A prompt to start with

Read https://gabe.work/ai/setup.md.
Help me build the morning-report workflow for my environment.
Start with synthetic data and my existing project instructions.
Identify the sources and owner choices before connecting accounts.
Verify the acceptance cases and show me the result.
Do not install global configuration or schedule recurring work
unless I authorize it.

What is ready to reuse?

These are standalone adaptation recipes. My current CLI implementations live in a private repository, so this is not a one-command installer or a downloadable package for those tools. Your agent can implement the contracts with your tools and test them against the listed cases.

The public general skills collection is optional reference material. It is not the source distribution for these CLIs.

Choose a recipe

Bring your own environment

Your agent should inspect your machine and project, preserve your settings, and use your own accounts and authorization policy. The guide does not authorize installations, messages or deployments. Start with one local workflow and synthetic fixtures, then connect the sources you choose.

Morning report

Story: https://gabe.work/ai/morning-report/

Demo: https://gabe.work/ai/morning-report/#build-report

Prerequisites

An agent with read access to explicitly selected sources, a personal output directory, a source registry, and an owner-defined authorization policy. Notes alone are enough for an initial local version. Do not invent connections to calendar, messages or tickets.

Implementation contract

Suggested output fields: generated_at, sources (id, status, reason, reference), tasks (id, text, category, source_refs), dropped_tasks (text, reason, source_refs), questions, blocked_tasks.

Acceptance checks

Use synthetic notes, messages and calendar records. Two summary requests become one task with two source references. An accepted invitation removes its scheduling follow-up. A pending invitation retains a proposed follow-up. A request to draft remains preparation; a request to send needs approval. An ambiguous request becomes a question. A document read failure is visible and does not produce a fabricated summary. A missing required connection prevents report generation. Running twice does not send anything or modify input fixtures.

Owner choices

Sources, output path, timezone, freshness window, what counts as required, category policy, and whether to schedule later. Do not inherit Gabe's integration requirements as universal defaults.

Bounded model decisions in CLIs

Story: https://gabe.work/ai/local-decisions/

Prerequisites

A CLI runtime, an explicitly selected inference provider, a caller-owned set of allowed labels, and named handlers with their own authorization checks. Begin with a fake provider returning fixed responses.

Implementation contract

Acceptance checks

Fixed responses cover every allowed label, null, malformed output, a disallowed label, timeout and unavailable inference. An input containing a command cannot execute it. An allowed but semantically wrong label passes structural validation, so evaluate judgment separately with labeled examples. Include contradictory evidence and repaired historical failures. Report errors as well as successes; do not invent confidence scores.

Agent checkpoints

Story: https://gabe.work/ai/agent-checkpoints/

Implementation contract

Store project-scoped records with a stable ID/name, goal, decisions, next action, artifact references, status, and verification history. Make save/update, resume, verify, complete, close and supersede explicit operations. Validate identifiers and write records atomically. Keep full artifacts in their project and link to them from checkpoints.

A verification operation runs an owner-authorized command and records its actual exit code. Completion requires successful verification or an explicit manual override with a reason. A failed check leaves the task open. Old checks are historical evidence and must not imply later edits have been verified.

Acceptance checks

Save and resume preserve the goal and next step. Updating does not create a duplicate open task. A failing completion check records failure and leaves status open. A passing check records completion and artifact references. Manual completion is distinguishable from verified completion. Superseded work stops appearing as an open continuation candidate. Tests use an isolated temporary state directory and never modify real checkpoints.

Homelab health

Story: https://gabe.work/ai/homelab-health/

Prerequisites and contract

For a Kubernetes version, require an explicitly selected cluster context and read-only credentials. Read nodes and workloads. Add Flux resources only if that cluster uses Flux; define them as required or out of scope explicitly. Do not assume an empty resource list proves collection succeeded.

Collect with bounded timeouts. Return current issues separately from collection errors, plus captured_at and the checked scope. Report healthy only when all required reads completed and no checked issues were found. This is resource health, not proof of application correctness. Never restart, delete or deploy as part of collection.

Allow sanitized snapshot save/replay with a versioned schema. Snapshots may retain infrastructure names even if logs and secrets are excluded. Keep them private unless reviewed. Mark replayed observations as historical; use fresh collection after a repair.

Acceptance checks

Synthetic snapshots cover healthy resources, a crash loop, unready nodes, unreconciled configuration and a timed-out required query. A failed read with an empty issue list must remain incomplete and not healthy. Replay returns the same findings for the same snapshot without cluster access. Invalid snapshots fail visibly. No test requires a production cluster or writes shared infrastructure.

From idea to shipped change

Story: https://gabe.work/ai/idea-to-shipped/

Use the owner's problem statement and project instructions. Research existing code before choosing an approach. For substantial new systems, save requirements, options, uncertain assumptions, a prototype plan and verification criteria with the project. Prototype uncertainty before committing to the design. Let the owner decide material tradeoffs and release authorization. Implement, run relevant checks and verify the actual delivered artifact. Record what was checked and what remains uncertain. Do not equate a successful push with a verified deployment.

Acceptance: another agent can identify the chosen approach, artifact location, next step and verification command without reconstructing the conversation. A failed verification prevents a success claim.

Local inference

Story: https://gabe.work/ai/local-ai/

Choose a runtime and model compatible with the owner's hardware. Gabe's described setup uses Apple Silicon, MLX and a loopback service; this is not a cross-platform installation recipe. Consult current official runtime documentation before installing. Get the owner's model choice and authorization for large downloads, persistent services and global configuration changes.

Use loopback-only binding by default, explicit provider selection, bounded requests and private local configuration. Verify the configured runtime's actual offline behavior rather than assuming local execution prevents all network access. Data collection may still contact connected services. Do not expose the inference service to the LAN as an incidental setup step.

Acceptance: a real completion succeeds, the listener is restricted to the intended interface, timeouts produce explicit failures, and requests still succeed after the owner-approved service restart. An open port alone does not pass. Separately evaluate decision quality; deployment location is not evidence of accuracy. Never claim live checks from a dry run.

Learn from a wrong assumption

Story: https://gabe.work/ai/when-the-agent-is-wrong/

Record a failure with the observation that disproved the assumption. Convert the lesson into an explicit behavior and a regression fixture. Keep historical hypotheses separate from current evidence. For source access, the regression must attempt the read and account for its real result, not treat the old diagnosis as authority. Do not assert that a written workflow rule makes the failure impossible.

Handoff checklist

Report the files changed, commands actually run, check results, selected account scope, provider/data path, unresolved questions and rollback steps. Keep credentials out of chat and repository content. Provide the owner with one small verified workflow before expanding it.