O Ordic
Features · v1

What ships today, what's coming next, and what it starts to replace.

Honest about scope. Shipped runs in the operator console right now. In progress is being built this week. Planned is on the list, not yet started.

What it starts to replace
cPanel directly
Control panel + email + DB + cron + SSL admin in one place. Built secure-from-the-ground-up rather than shimmed on top of plugin-CGI architecture.
WordPress directly
Static-publishing CMS that avoids plugin drift. The editor + publish surface run on your own machines, not a hosted black box.
Cloudflare Pages indirectly
Static-publishing path competes with the Pages workflow. The agent runs on your server rather than a vendor's edge.

Server management

// agent install → console-managed boxes

Agent enrollment
shipped

One install line on the box, signed heartbeat back. The agent is the only thing that touches root.

curl -fsSL ordic.ai/agent | sudo sh · 38 lines · pinned SHA256
Server detail panel
shipped

Live posture across services, packages, SSH access, firewall, scheduled tasks, and audit. One pane per box.

Services
shipped

systemd unit visibility — start, stop, restart, tail logs. Everything via the agent's wrapper scripts.

Packages
shipped

Inventory of what's installed, what's pending update, what's pinned. apt + dpkg today; rpm next.

SSH keys (per server, per user)
shipped

Edit authorized_keys with a typed picker. Pick from your registered org keys or paste a one-off.

Backups
shipped

age-encrypted, S3-compatible. Public key on Ordic, private key on a device you control. We never see plaintext.

backup_run · age recipient SHA256:abc1… · 2.4 GB · ok
Restore
shipped

Pick a snapshot, fingerprint-match the recipient, restore to staging or in-place. Decryption happens on your server.

Audit log
shipped

Every action by every actor, exportable, deep-linkable. Sensitive params redacted to fingerprints, never raw key material.

add_ssh_key · who=adam · key_fingerprint=SHA256:7Vq2…
Sites (Hugo · WP-static · plain static)
shipped

A site is a git repo + a build command + a destination. Hugo and pre-rendered WordPress both supported.

Publishing
shipped

Atomic deploys with a previous-release symlink. Rollback in one click. Publish history in audit.

publish_release · commit 3604125 · 18 files · ok
DNS onboarding
planned

Detect-and-import existing zones, propose A/CNAME/TXT changes through the same plan-approve-execute loop.

Agent self-update
planned

Signed agent binaries, staged rollout, opt-out per server. Not auto-on by default — operators choose the cadence.

Automated security updates
planned

unattended-upgrades wired into the audit log. Plan-approve-execute, just like every other op.

Multi-org
planned

Agencies running on behalf of multiple clients. Per-org audit isolation, per-org keys, per-org billing.

CMS / publishing

// editor → git → static publish

Library
shipped

Pages, posts, drafts, scheduled. Tree view that mirrors the on-disk content directory exactly.

Editor
shipped

Markdown + frontmatter, with a forms-first inspector for the structured fields. No chatbot, no live shell.

Media
shipped

Upload, browse, reuse. Stored next to content in the repo so backups capture both at once.

Publishing (Hugo)
shipped

Build runs on your server through the agent. Output is static. The destination is a directory you choose.

build_hugo · 4.1s · 218 pages · written to /srv/www/blog
Site settings
shipped

Theme variables, build command, publish target, env vars — all forms, all written into the repo's config file.

WordPress importer
in progress

Multi-stage wizard: connect source → render to static → review diffs → cut over. WXR + database paths both wired up.

Theme migration
planned

Map a WordPress theme to a Hugo theme, with a manual review pass for the layouts that don't translate cleanly.

Multi-destination publishing
planned

Same build, multiple targets — your server plus a CDN, or staging plus production. One git tag, two destinations.

Capability matrix
planned

Show, per site, exactly which plugin behaviours have a Hugo equivalent and which need a manual decision.

Forms-first, not chat-first
shipped

An LLM proposes a plan. You see the plan. You approve. The agent executes. There is no "tell me what you want" prompt at the centre of the product.