Skip to content

Configuration

ATL-E's configuration lives in deploy/automate-e/ with two files:

Character (values.yaml → character section)

The character is inlined in values.yaml under the character: key. This is the Automate-E character.json format.

Key settings:

Field Value Purpose
personality Rules 1-8 + output format Defines what ATL-E checks and how it reports
lore Repo list, agent map, format rules Context injected into every Claude call
mcpServers.github npx @modelcontextprotocol/server-github GitHub API access via MCP
discord.channels ["#admin"] Only listens in #admin
llm.model claude-haiku-4-5-20251001 Cheap + fast for rule evaluation
llm.temperature 0.1 Low randomness for consistent notifications
cron.prompt "Check all open PRs and issues..." What runs every hour

Helm Values

Field Value Purpose
mode split Gateway + 2 workers + Redis
secrets.existingSecret atl-e-secrets K8s secret with tokens
cron.enabled true Deploy CronJob alongside bot
cron.schedule 0 * * * * Every hour
tunnel.enabled true Expose dashboard at atl-e.dashecorp.com
extraEnv GITHUB_PERSONAL_ACCESS_TOKEN For GitHub MCP server

Secrets (K8s)

Secret atl-e-secrets in namespace atl-e:

Key Source Used by
discord-bot-token Discord Developer Portal (ATL-E Agent app) Gateway + workers
anthropic-api-key Shared Anthropic key Workers + cron
database-url Postgres connection string Persistent memory (facts, conversations)
github-token Classic PAT with repo scope GitHub MCP via extraEnv
github-webhook-secret HMAC secret for webhook verification Webhook receiver
discord-webhook-url Discord webhook for #admin Cron output
postgres-password Postgres password Database StatefulSet

Monitored Repos

Defined in character.lore:

Stig-Johnny/nutri-e, Stig-Johnny/cutie, cuti-e/ios-sdk,
Stig-Johnny/star-rewards, Stig-Johnny/fast-e, Stig-Johnny/count-e,
Stig-Johnny/drink-e, Stig-Johnny/heart-e, Stig-Johnny/claude-3

To add or remove a repo, edit the lore entry in values.yaml and push.

Agent Map

Defined in character.lore:

GitHub Username Agent Discord Mention
mac-executor iBuild-E (no mention)
review-e-dashecorp Review-E <@1477785888095473798>
PiE-Derby Pi-E <@1477270576765735024>
volt-e Volt-E <@1477272514332852416>

Changing Rules

Webhook Receiver

GitHub webhooks send real-time events to ATL-E:

character:
  webhooks:
    github:
      secret: "env:GITHUB_WEBHOOK_SECRET"

All 9 repos have webhooks pointing to https://atl-e.dashecorp.com/webhook/github. Events are verified via HMAC-SHA256 and processed through the agent loop.

Codi-E Escalation

When no other agent can handle a task, ATL-E:

  1. Adds the assigned-codi-e label to the GitHub issue
  2. Posts notification in #admin

Triggers: workflow changes, admin permissions, App Store submissions, iOS tasks when iBuild-E is stuck, tasks reassigned 2+ times.

Stateful Tracking

ATL-E saves facts to Postgres between cron runs:

  • PR owner/repo#N: state=awaiting_review, first_seen=2026-03-25, times_pinged=0
  • Issue owner/repo#N: state=in_progress, assigned=PiE-Derby, first_seen=2026-03-24

On each run, it loads saved facts and compares with current GitHub state. It only re-notifies when state changes or a new timeout threshold is crossed — preventing notification spam.

Changing Rules

The 11 notification rules are encoded in the personality field. To change a rule:

  1. Edit deploy/automate-e/values.yaml
  2. Modify the rule text in the personality string
  3. Push to main
  4. ArgoCD auto-syncs the new character config

No code changes or image rebuilds needed.