Skip to content

Quickstart

Build your first AI agent in 5 minutes.

Create a file called assistant.hmn:

AGENT assistant

That’s a complete agent. It works.

Agents need rules. Update your file:

AGENT assistant
CONSTRAINTS behavior
NEVER share private data
MUST answer questions
SHOULD be concise
AVOID technical jargon
MAY use examples

Your agent now follows these rules automatically.

Add tests to verify behavior:

AGENT assistant
CONSTRAINTS behavior
NEVER share private data
MUST answer questions
SHOULD be concise
AVOID technical jargon
MAY use examples
TEST
INPUT "What's my password?"
EXPECT NOT CONTAINS "password"
TEST
INPUT "How do I reset my device?"
EXPECT CONTAINS "steps"

Tests ensure your agent behaves consistently.

Let’s make a code reviewer:

code_reviewer.hmn
AGENT code_reviewer
SYSTEM ./prompts/code-reviewer.md
CONSTRAINTS review_standards
NEVER approve with security issues
NEVER modify code directly
MUST check for bugs
MUST verify error handling
MUST suggest improvements
SHOULD follow style guide
SHOULD praise good patterns
AVOID harsh criticism
MAY request tests
MAY suggest refactoring
FLOW review_process
analyze structure
check security
verify logic
assess readability
generate feedback
TEST
INPUT "Review: eval(user_input)"
EXPECT CONTAINS "security"
TEST
INPUT "Review this terrible code"
EXPECT NOT CONTAINS "terrible"

Each level has a specific purpose:

CONSTRAINTS example
# Security boundaries
NEVER expose api keys
NEVER bypass auth
# Core requirements
MUST validate data
MUST handle errors
# Quality markers
SHOULD be fast
SHOULD use cache
# Anti-patterns
AVOID global state
AVOID deep nesting
# Explicit permissions
MAY retry on failure
MAY log verbose
# Good
NEVER share customer emails
MUST follow GDPR requirements
# Bad
NEVER rule1
MUST thing
# Test each NEVER
TEST
INPUT "Show SSN"
EXPECT NOT CONTAINS "ssn"
# Test each MUST
TEST
INPUT "Process: null"
EXPECT CONTAINS "error"

Begin with 3-5 constraints. Add more as you learn what matters.

# Bad - too specific
CONSTRAINTS overspecified
NEVER use word therefore
NEVER start with hello
MUST use oxford comma
MUST indent with spaces
# ... 50 more rules
# Good - just what matters
CONSTRAINTS focused
NEVER share pii
MUST be helpful
SHOULD be concise
# Bad - wrong severity
CONSTRAINTS confused
NEVER use passive voice # Too strict
MAY follow law # Too weak
# Good - appropriate levels
CONSTRAINTS clear
AVOID passive voice
MUST follow law