What problem does it solve? Writing system prompts that behave consistently across different LLM providers is hard: each model family (GPT, Llama, Claude, Gemini, Grok, Kimi, Bedrock, Ollama) responds better to a different prompt style, and hardcoding prompts in code forces redeploys for every behavior tweak. This Skill provides best practices and per-model adaptation guidelines for Agno agent instructions, plus an S3-backed prompt source with local fallback. ## Core Features & Use Cases - General prompt best practices: structure prompts as persona, atomic rules, context, and explicit output contract, with anti-patterns and abstention rules to reduce hallucination. - Per-model adaptation guidance: concrete style adjustments for OpenAI GPT, Groq/Llama, Anthropic Claude, Google Gemini, xAI Grok, Moonshot Kimi, AWS Bedrock, and local Ollama models, keeping one canonical prompt and changing only form, never intent. - S3 prompt source with fallback: a port-and-adapter pattern that loads the canonical prompt from a versioned S3 bucket (LocalStack in dev) and falls back to a local baseline so the agent never starts without a prompt. - Use Case: When switching an Agno support agent from GPT to Llama via MODEL_PROVIDER_ORDER, apply the recency reinforcement rule (repeat the output format at the end of the prompt) without rewriting the persona, and run the same behavior tests to confirm parity. ## Quick Start Ask the AI to review or rewrite the description and instructions of your Agno agent following this skill's best practices and adapting the style to your target model provider.