NA

noogalabs/ascendops

Developer tools
6 stars Quality 66 Trend 28MIT

AscendOps — self-contained installer + framework + agent templates for standing up an agent fleet. curl -fsSL https://raw.githubusercontent.com/noogalabs/ascendops-install/main/install.mjs | node

Overview

- — Claude Code runs 24/7 in PTY sessions, auto-restarting on crash or after 71-hour context rotation. - — Orchestrator, Analyst, and specialist agents coordinate via a shared file bus. Tasks, blockers, and approvals flow automatically. - — Run agents on claude-code (default) or OpenAI's codex-app-server. Both runtimes share the same bus, crons, dashboard, and Telegram integration; pick per-agent. - — Send commands, approve actions, and get reports from anywhere. Native iOS app coming soon. - — Full-featured Next.js UI for tasks, approvals, experiments, analytics, and agent fleet health. - — Agents run autonomous experiments overnight, evaluate results, and surface findings for your review. Start with the Zero-to-Fleet Install Guide, or the Windows Install Guide for Windows 10/11. You need Node.js 20.19+ (20.x), 22.13+ (22.x), or 23.5+, Claude Code authenticated with your subscription or API key, and Telegram.

README

AscendOps

Persistent 24/7 Claude Code agents you control from Telegram or your phone.


Telegram chat

You:     Morning. What did you ship overnight?
Boss:    Overnight recap: completed 4 tasks, ran 2 theta-wave
         experiments, drafted 3 content scripts. One item needs
         your approval — I want to email the beta waitlist.
         Check the dashboard or reply "approve".

You:     approve
Boss:    Sent. Email delivered to 47 recipients. Task closed.

You:     Add a cron to check my inbox every morning at 8am.
Boss:    Done. "morning-inbox" cron set — runs daily at 08:00.
         Saved to crons.json — survives restarts automatically.

Features

  • Persistent agents — Claude Code runs 24/7 in PTY sessions, auto-restarting on crash or after 71-hour context rotation.
  • Multi-agent orchestration — Orchestrator, Analyst, and specialist agents coordinate via a shared file bus. Tasks, blockers, and approvals flow automatically.
  • Multi-runtime — Run agents on claude-code (default) or OpenAI’s codex-app-server. Both runtimes share the same bus, crons, dashboard, and Telegram integration; pick per-agent.
  • Telegram + iOS control — Send commands, approve actions, and get reports from anywhere. Native iOS app coming soon.
  • Web dashboard — Full-featured Next.js UI for tasks, approvals, experiments, analytics, and agent fleet health.
  • Autoresearch (theta wave) — Agents run autonomous experiments overnight, evaluate results, and surface findings for your review.

Architecture

flowchart TD
    U["User (Telegram / iOS)"] --> CLI["cortextOS Daemon (Node.js)"]
    CLI --> O["Orchestrator agent"]
    CLI --> A["Analyst agent"]
    CLI --> W["Specialist agents"]
    O |file bus| A
    O |file bus| W
    CLI --> D["Web Dashboard (Next.js)"]
    D --> U2["Browser / iOS App"]

Quick Start

Start with the Zero-to-Fleet Install Guide, or the Windows Install Guide for Windows 10/11. You need Node.js 20.19+ (20.x), 22.13+ (22.x), or 23.5+, Claude Code authenticated with your subscription or API key, and Telegram. The installer sets up PM2 and the CLI; onboarding walks you through your organization and agent bots.

On macOS or Linux:

installer_dir="$(mktemp -d)" && curl -fsSL https://raw.githubusercontent.com/noogalabs/ascendops/main/install.mjs -o "$installer_dir/install.mjs" && node "$installer_dir/install.mjs"
cd ~/ascendops && claude /onboarding

The downloaded .mjs file runs as an ES module on supported Node versions and keeps terminal input available for the installer’s prompts. If you set ASCENDOPS_DIR, use that folder in the onboarding command. Follow the install guide through each agent’s Telegram onboarding before using it for live work.

Manual setup (advanced)

cortextos install                          # Set up state directories
cortextos init myorg                       # Create an organization
cortextos add-agent boss --template orchestrator --org myorg
cortextos add-agent analyst --template analyst --org myorg

# Add Telegram credentials for each agent
cat > orgs/myorg/agents/boss/.env << EOF
BOT_TOKEN=
CHAT_ID=
ALLOWED_USER=
EOF

cortextos ecosystem                        # Generate PM2 config
pm2 start ecosystem.config.js && pm2 save && pm2 startup

# Windows: pm2 startup is unsupported. Use Task Scheduler instead:
#   powershell -ExecutionPolicy Bypass -File scripts\install-windows-pm2-startup.ps1

Requirements

Dependency Notes
Node.js 20.19+ (20.x), 22.13+ (22.x), or 23.5+ nodejs.org
macOS, Linux, or Windows 10/11 Windows uses Task Scheduler for reboot persistence — see scripts/install-windows-pm2-startup.ps1
Claude Code npm install -g @anthropic-ai/claude-code + claude login
PM2 npm install -g pm2
Telegram bot token Create via @BotFather

Templates

Template Description
orchestrator Coordinates agents, manages goals, handles morning/evening reviews, approves actions
analyst System health, metrics, theta-wave autoresearch, analytics
agent General-purpose worker — use this as the base for specialist agents
agent-codex Codex-runtime worker, scaffolds with runtime: codex-app-server and model: gpt-5-codex (see templates/agent-codex/)

Add a codex agent the same way you add a claude agent:

cortextos add-agent reindexer --template agent-codex --org myorg
# or, equivalently, with the runtime flag on the default template:
cortextos add-agent reindexer --runtime codex-app-server --org myorg

Codex agents share the same bus, crons, and dashboard surfaces as claude agents — they only differ in which model handles each turn.

The runtime field

Every agent’s config.json carries an explicit runtime field that the daemon dispatches on. Valid values:

Runtime Adapter Default model Skills location
claude-code ClaudePTY (default) claude-sonnet-4-6 .claude/skills//SKILL.md
codex-app-server CodexAppServerPTY gpt-5-codex plugins/cortextos-agent-skills/skills//SKILL.md (linked into ~/.codex/skills/__)
hermes HermesPTY (experimental) model per config.json hermes-specific

Pass --runtime on add-agent to set it at scaffold time, or edit the field in config.json and restart the agent. The default is claude-code. Today only --template agent (and the alias --template agent-codex) supports --runtime codex-app-server — pairing the codex runtime with --template orchestrator/analyst/m2c1-worker/hermes errors with a clean message until codex variants of those templates ship.


CLI Reference

cortextos install            # Set up state directories
cortextos init          # Create an organization
cortextos add-agent    # Add an agent (--template, --org, --runtime)
cortextos enable       # Enable agent in daemon
cortextos ecosystem          # Generate PM2 config
cortextos status             # Agent health table
cortextos doctor             # Check prerequisites
cortextos list-agents        # List agents
cortextos dashboard          # Start web dashboard (--port 3000)

Security

cortextOS has undergone a dedicated security hardening sprint covering prompt injection resistance, guardrail enforcement, and approval gate integrity. Agents require explicit human approval before any external action (email, deploy, delete, financial). The guardrails system is self-improving: agents log near-misses and extend GUARDRAILS.md each session.


License

MIT — see LICENSE.

View the full README on GitHub

Recommended Tools

Try a different keyword or remove a filter.

Install

npx skillfish add noogalabs/ascendops
New to MCP? Start with the mcpskill.org guide →