Skip to main content
Custom instructions are rules the agent follows on every prompt. Use them for things you’d otherwise restate in every prompt: coding style preferences, default behaviors, things to never do.

Where they live

Project-specific instructions override workspace-wide on conflicts.

Examples

Coding style

Brand and copy

Defaults

Don’ts

Anatomy of a good instruction

✅ Specific and actionable

“Use 4-space indentation in TypeScript files.” Verifiable.

✅ Reasoned (when non-obvious)

“Prefer Convex actions over fetch() in components — it keeps API calls server-side.” The ‘why’ helps the agent generalize.

❌ Vague

“Write good code.” Unactionable.

❌ Contradictory

“Use functional components” + “Always use class components for forms”. Pick one.

Workspace-wide vs. project-specific

Use workspace-wide for rules that apply to all your work: coding style, naming conventions, etc. Use project-specific for rules tied to one app: “This project uses Tailwind v4. The brand color is #FF6600. Reference the design system at https://design.thisapp.com.”

Tips

Start small. Add as you correct. Every time you reverse a vly decision, ask: “Could a custom instruction prevent this next time?” If yes, add it.
Use Markdown. Custom instructions are parsed as markdown. Use bullets, code blocks, and headers for clarity.
Don’t replicate the knowledge base. Custom instructions are rules. Knowledge is reference. If it’s a fact (“our color is #6D28D9”), it’s knowledge. If it’s an action (“use this color”), it’s an instruction.

Knowledge base

Reference material the agent reads.

Templates

Pre-built starting points.

Prompting fundamentals

The basics of writing a prompt.
Last modified on April 18, 2026