Skip to content

Conversation

@kieranklaassen
Copy link
Contributor

@kieranklaassen kieranklaassen commented Jan 9, 2026

Summary

Addresses #71 - This PR refines the agent-native-architecture skill's guidance on tool design, replacing the binary "primitives vs workflows" stance with a more nuanced spectrum-based approach.

Key Changes

New Sections Added

  1. Primitives Vocabulary - Defines key terms upfront:

    • Pure Primitive, Guided Primitive, Domain Tool, Orchestrated Action, Sub-Agent, Harness
    • Clarifies that a "tool call" is just a mechanism—what you wire to it determines its nature
  2. "What IS a Tool?" - Philosophical section covering:

    • API doesn't distinguish between file reads and sub-agent spawns
    • Sub-agents break the primitive model (they make their own decisions)
    • Tool descriptions as JIT context injection
  3. Decision Framework - New mental model:

    Decision Owner Implementation
    Business rule (always this way) Code in tool execution
    Tool-specific strategy (usually this way) Tool description
    Conversation-dependent System prompt
    Agent judgment Neither—trust the model
  4. Harness Pattern - When to use code to enforce business invariants

Updated Sections

  1. Granularity Principle - Now shows the spectrum:

    Pure Primitive → Guided Primitive → Domain Tool → Orchestrated Action
    

    With guidance on when to use each.

  2. Anti-Patterns - Restructured with:

    • "When it's wrong" vs "When it's fine" for each pattern
    • Acknowledges that logic in tools isn't automatically wrong
    • Separates "judgment calls" from "actual anti-patterns"
  3. Architecture Checklist - Updated with new checkboxes:

    • Right level of granularity
    • Decision ownership clear
    • JIT Context Injection

Closes

Closes #71

…uidance

Addresses #71 - replaces binary "primitives vs workflows" with nuanced
decision framework based on ownership.

Key changes:
- Add Primitives vocabulary section defining key terms
- Add "What IS a Tool?" section clarifying tool calls as mechanisms
- Add JIT Context Injection pattern for modular prompting
- Add Harness Pattern for business invariants
- Refine anti-patterns with "when wrong" vs "when fine" guidance
- Apply pragmatic writing style with concrete story openings

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refine 'Tools as Primitives' principle to acknowledge valid use cases for logic in tools

2 participants