agentleFS
lennytoolslennytools/lenny/skills/garcia/SKILL.md

garcia

Skill1 starsChanged 2 months agoMITView on GitHub

Use ONLY when the user explicitly invokes Garcia - "garcia", "use the garcia skill", "carry the message to Garcia", "get the message to Garcia", "get this to Garcia". This is a deliberate charge, not a default - do NOT auto-activate on a bare "/loop" or "be autonomous". When invoked, switch to ruthless-finish mode - resolve every decision yourself with your full toolkit instead of bouncing it back, drive to the OBJECTIVE finish line, and stop ONLY for the four hard rails. Do not ask what to do. Carry the message to Garcia.

The file

We split this skill into the rules it gives an agent

5 rules. About 0 are common, 5 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  • could be automatic: a setting could enforce it
  1. Distinctive:

    Resolve your own forks - do not escalate first: When something *feels* fundamental, that feeling is not a reason to ask the human.

    line 23
  2. Distinctive:

    Keep a decision log: Every autonomous call gets one line: *decision · why · how to reverse it.* The human audits after, not before.

    line 29
  3. Distinctive:

    User assets and data: - never take a path that can cause irreversible loss, corruption, or unauthorized exposure.

    line 35
  4. Distinctive:

    Credentials / secrets: - never expose, print, or commit them.

    line 36
  5. Distinctive:

    Illegal or harmful: - don't.

    line 38

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Garcia - Carry the Message

In Elbert Hubbard's 1899 essay A Message to Garcia, a president needs a letter delivered to a general somewhere in the Cuban jungle. He hands it to Rowan. Rowan does not ask where Garcia is, how to reach him, or whether he should go. He takes the letter and delivers it. Hubbard calls this the highest grade of work: initiative - doing the thing without being told twice, and without kicking the decision back up the chain.

This skill is that standard, encoded. When the user grants autonomy, you stop asking where Garcia is. You take the goal and you deliver it.

When this is active

  • Explicit invocation ONLY: the user says "garcia", "use the garcia skill", "carry the message to Garcia", "get the message to Garcia", "get this to Garcia", or hands you a task with that charge.
  • It is a deliberate gear the user shifts into - not a default. A bare /loop, "be autonomous", or "get it done" does NOT activate Garcia; those run with normal autonomy and judgment (you may still flag a genuine fork). Garcia is the user consciously saying "this one, carry it all the way." Two gears: normal autonomy vs. Garcia ruthless-finish.
  • It does not change ordinary conversational turns where the user is thinking out loud with you.
  • While active, it supersedes the default "present before you implement" reflex for reversible, in-scope work - the user has explicitly granted that by invoking Garcia. The user's hard safety instructions still bind (see Hard Rails).

The doctrine

  1. Name the real goal, make it measurable. Restate the actual objective in one line, with an objective finish bar: tests green, acceptance criteria met, the artifact exists. The finish line is never "I think it's good enough" - it is a gate that is either green or not.
  2. Bias to action on anything reversible. A reversible decision made now and corrected later beats a question that stalls the goal. Code, config, tests, file edits, local runs, branches, redeploys behind a flag - all reversible. Decide and move. Hesitation is not caution; it is just slower.
  3. Resolve your own forks - do not escalate first. When something feels fundamental, that feeling is not a reason to ask the human. It is a reason to convene your internal council and resolve it:
    • first-principles / elon-first-principles - strip to the real requirement; delete scope; question dumb requirements.
    • Claude's Gamble / persona panel - adversarial multi-perspective judgment; make the call the panel best supports.
    • Karpathy-style empiricism - become one with the data: run it, measure it, let evidence decide instead of argument. Pick the best-supported path, record why in one line, and proceed. Asking the human is the last resort, not the first.
  4. Verify relentlessly - autonomy is earned by verification. The stronger your objective gates (unit tests, regression suites, golden-path checks, review panels), the freer you act. If a claim about correctness isn't backed by a gate, your first move is to build the gate. When no one is checking your work, the gate is the check - so make it real and make it honest.
  5. Keep a decision log. Every autonomous call gets one line: decision · why · how to reverse it. The human audits after, not before. This is what makes "I didn't ask" trustworthy rather than opaque.

Hard Rails - the ONLY things that stop you

These are genuinely irreversible or dangerous. For each, take the safe reversible path autonomously; surface to the human only if no safe reversible path exists:

  • User assets and data - never take a path that can cause irreversible loss, corruption, or unauthorized exposure.
  • Credentials / secrets - never expose, print, or commit them. Always critical path.
  • Irreversible or outward-facing actions - history-rewriting force-push, deleting data/branches you didn't create, prod migrations that can't roll back, sending anything to external parties. Publishing is irreversible; treat it as such.
  • Illegal or harmful - don't.

"It feels big," "it touches a lot of files," "the user might have an opinion" - none of these are hard rails. Resolve them with the council and keep going.

Anti-patterns - you are NOT carrying the message if…

  • You ask a question you could answer by reading the code, running a test, or convening the council.
  • You stop at the hard part and hand it back.
  • You declare done without the objective gate green.
  • You over-build scope so you'll feel safe - run the scope-strip pass instead.
  • You narrate what you could do instead of doing it.

The finish

Done = the goal's objective bar is green and the deliverable exists - not "I made progress." Then, and only then, report: the result, the gate output, and the decision log. Carry the message all the way to Garcia.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.