feat: add multi-platform chat bot with Discord adapter#1095
Open
feat: add multi-platform chat bot with Discord adapter#1095
Conversation
Multi-platform chat bot using Chat SDK (TypeScript) with Discord as the first adapter. Tiered access model routes owner requests through the orchestrator and everyone else through llama-cpp. Outbound notifications from cluster-agents via NATS pub/sub. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
15-task implementation plan covering project scaffolding, Chat SDK integration, orchestrator/llama-cpp clients, NATS notifications, Helm chart, ArgoCD deployment, and cluster-agents notification publisher. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add NotificationPublisher that publishes notification messages to NATS subjects for Discord channel delivery. NATS connection is optional — if NATS_URL is not configured, the publisher is disabled with a warning. The publisher is created but not yet wired into agents (future task). Also fix pre-existing hardcoded K8s service URLs in envOr defaults to use empty strings instead (URLs are injected via values.yaml). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
7855fe7 to
4d84fcf
Compare
…esolution The apko.translate_lock references //projects/agent_platform/chat_bot/image:apko.lock.json which requires the image/ directory to be a Bazel package. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
projects/agent_platform/chat_bot/) using Chat SDK (TypeScript) with Discord as the first platform adapterNotificationPublisherto cluster-agents for NATS-based Discord notificationsWhat's included
chat_bot/src/— config, orchestrator client, llm client, gist client, NATS client, handlers, entry pointchat_bot/image/apko.yaml— Node.js 20, non-root, dual-archchat_bot/deploy/— deployment, service, 1Password secrets, ArgoCD Applicationchat_bot/BUILD+deploy/BUILD— image + chart publishingnotification.go+ NATS env var wiring (v0.4.0)docs/plans/2026-03-12-chat-bot-design.md+ implementation planBefore deploying
Manual steps required (Task 15 in the plan):
k8s-homelabasdiscord-bot-credentialsapplication.yamlvaluesObject withownerDiscordUserIdandnotificationChannelMapTest plan
helm templaterenders cleanly for chat-bot chart🤖 Generated with Claude Code