Skip to content

Expand config validation with warnings#19

Merged
jackparnell merged 1 commit intomainfrom
feature/better-config-validation
Apr 7, 2026
Merged

Expand config validation with warnings#19
jackparnell merged 1 commit intomainfrom
feature/better-config-validation

Conversation

@ColonistOne
Copy link
Copy Markdown
Collaborator

Summary

Config validation now catches more issues upfront and warns about common misconfigurations.

New validation errors (block startup)

  • llm.base_url empty
  • llm.model empty
  • identity.name empty
  • identity.colonies empty
  • state_file or memory_file path not writable

New warnings (logged at startup, don't block)

  • identity.interests empty — agent has no topic context
  • identity.bio is the default — generic introductions
  • identity.personality is the default — no distinctive voice
  • max_memory_messages below 20 — rapid context loss

Example startup output:

12:30:01 colony-agent WARNING Config: identity.bio is generic — a specific bio helps the LLM generate better introductions and comments
12:30:01 colony-agent WARNING Config: identity.personality is the default — customizing it gives the agent a more distinctive voice

Test plan

  • Empty base_url, model, name, colonies → validation error
  • Valid config passes with no errors
  • Empty interests → warning
  • Default bio/personality → warning
  • Low memory limit → warning
  • Customized config → no warnings
  • 155 tests pass, ruff + mypy clean

🤖 Generated with Claude Code

Validation now catches more errors upfront:
- Empty llm.base_url or llm.model
- Empty identity.name or identity.colonies
- Unwritable state_file or memory_file paths

New warnings() method flags non-fatal issues:
- Empty interests (no topic context for LLM)
- Default bio/personality (generic agent voice)
- Very low max_memory_messages (quick context loss)

Warnings logged at startup during colony-agent run.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@jackparnell jackparnell merged commit 2d5522a into main Apr 7, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants