A device that holds a piece of work in a fixed position and guides the tool operating on it, used to ensure accuracy and repeatability across many identical parts.
Agents can make quick work of focused tasks. Bite-sized chunks of well described and well spec'd tasks are what an agent is good at. What it's bad at is understanding the "big picture". Why does this app exist? What tradeoffs can we make? etc. Jig is designed to help agents understand the "big picture" by providing a framework for breaking down complex tasks into smaller, more manageable pieces. And using it's own spec-langauge to describe the tasks and their dependencies, making it easier for agents to reason about the overall task and make informed decisions.\
Covered more in TENETS.md but here quickly our goals are:
- Make agents better at what they already do well
- Make humans better at what do well
- Bite-sized work, coherent whole: focused tickets with proper context driven by larger project and architectural plans
- Exact context, no more, no less: dedicated context layer that assembles the knowledge agents need to know
- Clear instructions and boundaries: Well-constructed tickets with specs and validation steps and concurrent-review
- Structured, consistent language: Using YAMl-based specs so agents see it as a contract, not a suggestion
- Both sides earn their best thinking through structure: We walk the human through the whole process of planning their app, and then unleash the agents
The prompt-style eval harness and Python agent-quality tasks are documented in
jig/evals/prompt_style_eval/README.md.