Skip to content

AdminServiceCloud/asc-daemon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

53 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ¦€ ASC Daemon CLI

🌍 Language: English Β· πŸ‡·πŸ‡Ί Русская вСрсия

CI Release Version License: MIT

πŸ“Œ About

Open source utility for managing runtime applications on Linux: a daemon and CLI written in Rust that launch and maintain applications of any runtime β€” Docker containers, native applications (systemd) and plain processes. Included: a package manager, backups, monitoring, and an MCP server for AI. Works standalone via the CLI or as an agent of the AdminService.Cloud SaaS platform. Runs in any Linux environment, including WSL (Windows Subsystem for Linux).

✨ Key features

  • πŸ“± Application management β€” Docker containers, native applications (systemd) and system utilities
  • πŸ’» CLI β€” full server management from the terminal (asc ...)
  • 🧬 Instance cloning β€” asc app clone <id>: a full copy of an application instance (data, env, settings) with a new id; via the AdminService.Cloud UI a clone can be moved to another node
  • πŸ“‘ ConnectRPC + REST API β€” the API proto contracts live in this repository (proto/) and ship together with the daemon; the AdminService.Cloud platform links them from here. REST (JSON/HTTP) runs alongside ConnectRPC on the same server β€” from the same contracts
  • πŸ“¦ Package manager β€” an asc.yaml manifest, registries (like apt) and installation via asc install <package>
  • πŸ€– MCP server β€” manage the server through AI (Claude Code, Claude Desktop, the ASC platform)
  • πŸ’Ύ Backups β€” full and incremental, local and to the cloud (S3/SFTP), with rotation
  • πŸ“Š Monitoring β€” system and application metrics, health checks
  • πŸ“ SFTP server β€” file access isolated to a specific application
  • πŸ—„οΈ Databases β€” create databases and users (PostgreSQL, MySQL, MongoDB, Redis)
  • πŸ–₯️ Consoles β€” WebSocket application terminal and SSH console for the UI
  • ⏰ Scheduler β€” scheduled (cron) tasks, a priority queue
  • πŸ”„ asc-updater β€” a separate updater utility: auto-updates (can be disabled), stable/beta channels, rollback; at install time β€” pick default settings or your own
  • 🧠 Skills for AI agents β€” ready-made skills for Claude Code and other models in the skills/ directory

πŸ’‘ Motivation

Existing panels solve only part of the problem: Portainer manages Docker, Pterodactyl manages game servers, classic hosting panels manage websites. As soon as a real server mixes containers with native services, you are back to raw SSH. asc-daemon was born to manage any runtime through one tool β€” Docker containers, systemd services and plain processes β€” with the same commands, the same API and the same package manager. And because AI agents are becoming the way servers get managed, the daemon speaks MCP natively, so an AI can operate your server as a first-class client. The daemon is fully autonomous: everything works locally via the CLI, no platform account required.

⚑ Installation

curl -fsSL https://raw.githubusercontent.com/AdminServiceCloud/asc-daemon/main/install.sh | sudo bash

interactive: shows the default settings and asks β€” accept or change

curl -fsSL https://raw.githubusercontent.com/AdminServiceCloud/asc-daemon/main/install.sh | sudo bash -s -- --silent

silent mode: one command, everything installed with defaults and no questions

You can also configure it after a silent install: asc-updater + /etc/asc/config.toml.

πŸ“‹ Requirements

  • 🐧 OS: Debian and Ubuntu are supported today, including under WSL (Windows Subsystem for Linux); other distributions (CentOS/RHEL, Fedora, Arch, etc.) and macOS are planned
  • 🧬 Architectures: x86_64, ARM64, ARMv7
  • πŸ”‘ Root/sudo for installation; Docker is installed automatically when needed
  • βš™οΈ systemd (for asc service and autostart)

⌨️ Quick start

asc service install

βš™οΈ install the daemon's API service as a systemd unit (autostart)

asc service start|status

πŸš€ start the service / check its state

asc status

πŸ“Š server and application status

asc install helloworld

πŸ“¦ install an application from the registry

asc app logs helloworld

πŸ“œ application logs

asc app clone helloworld

🧬 clone an application instance (data, env, settings)

asc app settings helloworld

πŸŽ›οΈ interactive settings editor (types, limits and enums from asc.settings.yaml)

asc config lang ru

🌍 change the CLI output language (en|ru)

asc connect <token>

☁️ connect to the AdminService.Cloud platform

asc mcp serve

πŸ€– run the MCP server for AI clients

🧠 Skills for Claude Code and other models

The skills/ directory contains ready-made Agent Skills that teach AI agents to manage the server through asc:

cp -r skills/* ~/.claude/skills/

Claude Code: install the skills globally (for all projects)

cp -r skills/* .claude/skills/

Claude Code: install the skills for the current project only

Skill What it does
πŸ–₯️ asc-server-management Server management: applications, logs, backups, databases. If asc is not installed, it checks, then offers to install it from the official repository with a single command (silent mode)
πŸ“¦ asc-app-packaging Packaging applications: asc.yaml / asc.stack.yaml, validation against schemas, publishing to a registry

For MCP clients (Claude Desktop and others) use the daemon's MCP server instead of skills: asc mcp serve.

πŸ“š Documentation

Documentation for the daemon's modules lives in the docs/english/ directory (πŸ‡·πŸ‡Ί Russian version):

Doc Description
πŸ¦€ Daemon overview Architecture, API, installation
πŸ“‘ api gRPC (ConnectRPC) + REST on one port, tokens
πŸ“± app-management Docker and native applications, CLI
πŸ“¦ package-manager asc.yaml, registries, asc install
πŸ€– mcp-server MCP server for AI
πŸ“Š monitoring System and application metrics
πŸ’Ύ backups Application backups
πŸ“ sftp SFTP isolated per application
πŸ—„οΈ database Database management
πŸ–₯️ console WebSocket and SSH consoles
⏰ scheduler Task scheduler
πŸ”„ updater The asc-updater utility: auto-updates, channels, rollback

πŸ—ΊοΈ Roadmap

The roadmap for the whole project is kept in the asc-platform repository:

πŸ’¬ Support

Reach out to the maintainers through any of these channels:

🌟 Project assistance

If you want to say thank you or support the active development of asc-daemon:

  • ⭐ Add a GitHub star to the repository
  • 🐦 Share the project on social media
  • πŸ“ Write about the project on your blog or at meetups
  • 🀝 Contribute β€” code, docs, translations, registry packages

🀝 Contributing

Contribution rules are in CONTRIBUTING.md; CI and releases run on GitHub Actions (.github/workflows/). Developing on Windows? Use WSL (Ubuntu) to build and test the project: cargo build / cargo test run in WSL, while cargo check / clippy work from the host against the Linux target (see .cargo/config.toml). Every pull request automatically gets a review from the code owner (@statebyte) via CODEOWNERS.

Please read our 🀝 Code of Conduct before participating β€” we are committed to a welcoming and harassment-free community.

πŸ‘₯ Authors & contributors

The original setup of this repository is by Omar El Sayed (@statebyte), AdminService.Cloud, Anytecture Software.

For a full list of all authors and contributors, see the contributors page.

πŸ›‘οΈ Security

asc-daemon follows good practices of security, but 100% security cannot be assured. The software is provided "as is" without any warranty.

Found a vulnerability? Please report it privately β€” see our πŸ›‘οΈ Security Policy.

πŸ“„ License

MIT β€” free to distribute, modify and use commercially, but with mandatory attribution: Omar El Sayed (@statebyte), the AdminService.Cloud project, Anytecture Software.

About

Modern Linux cli utility in Rust for application runtime management

Topics

Resources

License

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors