.claude/skills/agentic-feature-design/SKILL.md
Designing features for the "Action Era" that are AI-accessible by default
npx skillsauth add captjay98/gemini-livestockai Agentic Feature DesignInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Features in LivestockAI must now be designed for dual consumption: Humans (UI) and Agents (MCP/API).
Every feature must be fully functional via Server Functions before any UI is built.
Test: Can an agent complete the entire user story using only bun run check-feature-x.ts (a script calling server functions)?
If yes -> Agent Ready.
If no (logic lives in React components) -> Refactor immediately.
Server functions are the tools we give to agents. Document them accordingly.
export const createBatchFn = createServerFn({ method: 'POST' })
.inputValidator(batchSchema)
.handler(async ({ data }) => {
/* ... */
})
/**
* @description Creates a new livestock batch.
* @workflow
* 1. Check `getFarmFacilities` for space.
* 2. `createBatchFn`
* 3. Log initial `feed_record` if applicable.
*/
Agents operate on Intent, not just data.
Instead of generic CRUD (updateBatch), expose semantic actions (graduateBatch, quarantineBatch).
// ❌ Generic
updateBatch(id, { status: 'sold' })
// ✅ Semantic (Agent Friendly)
markBatchAsSold(id, { date, price, customer })
Semantic actions allow agents to:
Agents need a standard way to ask for permission for high-stakes actions (e.g., ordering feed, selling stock).
The ApprovalRequest Entity:
agentId: Who is asking?action: JSON payload of the server function to call.summary: Human-readable explanation ("I want to order 50 bags of Starter Feed").status: PENDING | APPROVED | REJECTEDAll major entities (Batches, Sales) should have an ai_metadata JSONB column.
Agents use this to store reasoning ("Predicted harvest date change due to low feed intake").
Do not show this raw JSON to users, but use it to power UI "Insights".
three-layer-architecture - Where the logic livesfeature-structure - How to organize the filesdata-ai
Input validation patterns with Zod in LivestockAI server functions
testing
Unit testing patterns with Vitest in LivestockAI
tools
Server → Service → Repository pattern for feature organization
data-ai
Server-side rendering and server functions with TanStack Start in LivestockAI