@purinton/architect

1.0.6 • Public • Published

Purinton Dev

@purinton/architect npm versionlicensebuild status

A modern, AI-powered Discord app for server automation and administration, built with Node.js and the @purinton/discord foundation. Architect integrates the Model Context Protocol (MCP) and OpenAI for conversational, natural language server management.


Table of Contents

Features

  • AI-driven Discord server automation and administration
  • Conversational interface: chat with Architect by mentioning @Architect or replying to its messages
  • Only responds to users with Administrator permissions for security
  • Multi-language/localized responses (see locales/)
  • Command and event handler architecture (see commands/ and events/)
  • Environment variable support via dotenv
  • Logging and signal handling via @purinton/common
  • Ready for deployment with systemd or Docker
  • Jest for testing

Getting Started

  1. Clone this project:

    git clone https://github.com/purinton/architect.git
    cd architect
    npm install
  2. Set up your environment:

    • Copy .env.example to .env and fill in your Discord app token and other secrets.
    • Edit package.json (name, description, author, etc.)
    • Update this README.md as needed.
  3. Start the app locally:

    npm start
    # or
    node architect.mjs

Configuration

  • All configuration is handled via environment variables in the .env file.
  • See .env.example for required and optional variables.
  • The openai.json file configures OpenAI prompt and tool integration.
  • The tools.json file (or tools.json.example) defines available MCP tools.

Running as a Service (systemd)

  1. Copy architect.service to /usr/lib/systemd/system/architect.service.

  2. Edit the paths and user/group as needed.

  3. Reload systemd and start the service:

    sudo systemctl daemon-reload
    sudo systemctl enable architect
    sudo systemctl start architect
    sudo systemctl status architect

Docker

  1. Build the Docker image:

    docker build -t architect .
  2. Run the container:

    docker run --env-file .env architect

Customization

Commands

  • Add new commands in the commands/ directory.
  • Each command has a .json definition (for Discord registration/localization) and a .mjs handler (for logic).
  • Example: see commands/help.json and commands/help.mjs.

Events

  • Add or modify event handlers in the events/ directory.
  • Each Discord event (e.g., ready, messageCreate, interactionCreate) has its own handler file.
  • Example: see events/messageCreate.mjs for AI chat logic.

Locales

  • Add or update language files in the locales/ directory.
  • Localize command names, descriptions, and app responses.
  • Example: see locales/en-US.json for English responses.

Testing

  • Run tests with:

    npm test
  • Tests are in the tests/ folder and cover commands, events, and tools.

Support

For help, questions, or to chat with the author and community, visit:

DiscordPurinton Dev

Purinton Dev on Discord

License

MIT © 2025 Russell Purinton

Links

Package Sidebar

Install

npm i @purinton/architect

Weekly Downloads

168

Version

1.0.6

License

MIT

Unpacked Size

240 kB

Total Files

200

Last publish

Collaborators

  • rpurinton