@promethean-os/cephalon
v0.0.1
Published
A proof-of-concept basic bot using @discordjs/voice
Maintainers
Readme
Cephalon (Discord)
Commands → Actions Refactor (in progress)
This service is migrating to a commands/actions pattern with tiny, framework‑free store and effects.
- Commands: Discord-only entrypoints in
src/commands/*withdataand defaultexecute(). - Actions: Reusable domain functions in
src/actions/*with colocated*.scope.tsbuilders. - Store:
src/store/*contains a minimal event store and effects calling actions. - Factories: Small dependency builders live under
src/factories/*.
Tracer commands implemented:
ping→actions/ping.tsleave-voice→actions/leave-voice.ts(Discord-coupled via adapter)
Add a new action
- Create
src/actions/foo.tsexportingdefault async function run(scope, input). - Create
src/actions/foo.scope.tsexportingtype FooScopeandbuildFooScope().
Add a new command
- Create
src/commands/foo.tsexportingdataand defaultexecute(interaction, ctx). - Commands build a scope (or dispatch an event) and call the action; they handle defer/reply.
The Bot is a thin router: it registers commands and forwards interactions to command handlers. Effects listen to events and invoke actions.
#hashtags: #cephalon #service #promethean #actions #commands
