From 7db364716c3cb3fceacb34a40f0466275b83be6c Mon Sep 17 00:00:00 2001 From: Max Mayfield Date: Sun, 1 Mar 2026 16:45:03 +0000 Subject: [PATCH] CI: install Go to HOME dir instead of /usr/local (no sudo needed) --- .gitea/workflows/ci-p2-drift.yml | 10 +++++----- products/marketing/site/dist/alert/index.html | 6 +++--- products/marketing/site/dist/cost/index.html | 6 +++--- products/marketing/site/dist/drift/index.html | 6 +++--- products/marketing/site/dist/index.html | 8 ++++---- products/marketing/site/dist/portal/index.html | 6 +++--- products/marketing/site/dist/route/index.html | 6 +++--- products/marketing/site/dist/run/index.html | 6 +++--- products/marketing/site/src/components/CTA.astro | 2 +- products/marketing/site/src/components/Hero.astro | 2 +- products/marketing/site/src/components/Layout.astro | 4 ++-- products/marketing/site/src/components/Pricing.astro | 4 ++-- products/marketing/site/src/pages/alert.astro | 2 +- products/marketing/site/src/pages/cost.astro | 2 +- products/marketing/site/src/pages/drift.astro | 2 +- products/marketing/site/src/pages/portal.astro | 2 +- products/marketing/site/src/pages/route.astro | 2 +- products/marketing/site/src/pages/run.astro | 2 +- 18 files changed, 39 insertions(+), 39 deletions(-) diff --git a/.gitea/workflows/ci-p2-drift.yml b/.gitea/workflows/ci-p2-drift.yml index bd89427..2b44c37 100644 --- a/.gitea/workflows/ci-p2-drift.yml +++ b/.gitea/workflows/ci-p2-drift.yml @@ -17,20 +17,20 @@ jobs: - name: Install Go run: | if ! command -v go &>/dev/null; then - curl -sL https://go.dev/dl/go1.22.12.linux-amd64.tar.gz | tar -C /usr/local -xzf - 2>/dev/null || \ - curl -sL https://go.dev/dl/go1.22.12.linux-amd64.tar.gz | sudo tar -C /usr/local -xzf - - export PATH="/usr/local/go/bin:$PATH" + mkdir -p $HOME/go-sdk + curl -sL https://go.dev/dl/go1.22.12.linux-amd64.tar.gz | tar -C $HOME/go-sdk --strip-components=1 -xzf - fi + export PATH="$HOME/go-sdk/bin:$PATH" go version - name: Test agent run: | - export PATH="/usr/local/go/bin:$HOME/go/bin:$PATH" + export PATH="$HOME/go-sdk/bin:$HOME/go/bin:$PATH" cd $GITHUB_WORKSPACE/products/02-iac-drift-detection/agent && go mod download && go mod tidy && go test ./... - name: Vet run: | - export PATH="/usr/local/go/bin:$HOME/go/bin:$PATH" + export PATH="$HOME/go-sdk/bin:$HOME/go/bin:$PATH" cd $GITHUB_WORKSPACE/products/02-iac-drift-detection/agent && go vet ./... saas: diff --git a/products/marketing/site/dist/alert/index.html b/products/marketing/site/dist/alert/index.html index 7c7b301..795b051 100644 --- a/products/marketing/site/dist/alert/index.html +++ b/products/marketing/site/dist/alert/index.html @@ -1,8 +1,8 @@ - dd0c/alert — Alert Intelligence & Correlation
dd0c/alert

Alert fatigue is a bug, not a feature

+ dd0c/alert — Alert Intelligence & Correlation

dd0c/alert

Alert fatigue is a bug, not a feature

Ingest webhooks from PagerDuty, Datadog, OpsGenie, and Grafana. Group related alerts into incidents using time-window correlation. Stop waking up three times for the same outage. -

🔗

Multi-source correlation

HMAC-verified webhooks from 4 providers. Canonical alert schema normalizes everything into one format.

⏱️

Time-window grouping

5-minute correlation windows. Late alerts attach to existing incidents. Very late alerts create new ones.

📉

80% noise reduction

20 alerts from the same root cause become 1 incident. Your on-call engineer sees one notification, not twenty.

📧

Slack, email, webhook

Severity-gated notifications. Critical goes to Slack + email. Low goes to a dashboard. You decide.

Stop paying enterprise prices
for tools you half-use

+

🔗

Multi-source correlation

HMAC-verified webhooks from 4 providers. Canonical alert schema normalizes everything into one format.

⏱️

Time-window grouping

5-minute correlation windows. Late alerts attach to existing incidents. Very late alerts create new ones.

📉

80% noise reduction

20 alerts from the same root cause become 1 incident. Your on-call engineer sees one notification, not twenty.

📧

Slack, email, webhook

Severity-gated notifications. Critical goes to Slack + email. Low goes to a dashboard. You decide.

Stop paying enterprise prices
for tools you half-use

dd0c is built by a solo engineer who got tired of $50K/year DevOps platforms that take 3 months to set up. Each tool does one thing well. Start free. Pay when it saves you money. -

\ No newline at end of file diff --git a/products/marketing/site/dist/cost/index.html b/products/marketing/site/dist/cost/index.html index 7303d92..4358c56 100644 --- a/products/marketing/site/dist/cost/index.html +++ b/products/marketing/site/dist/cost/index.html @@ -1,8 +1,8 @@ - dd0c/cost — AWS Cost Anomaly Detection
dd0c/cost

Know about cost spikes before the bill arrives

+ dd0c/cost — AWS Cost Anomaly Detection

dd0c/cost

Know about cost spikes before the bill arrives

Welford's algorithm builds running baselines per resource type. Z-score anomaly detection catches spikes in real time. Slack alerts with one-click snooze for expected costs. Governance engine auto-promotes from shadow to enforce. -

📈

Statistical baselines

Welford's online algorithm. No batch jobs. Baselines update with every data point. Optimistic locking prevents corruption.

🎯

0-100 anomaly score

Z-score mapped to a simple 0-100 scale. Set your threshold. Default 50 (2σ). Tune per resource type.

🛡️

Governance engine

Shadow → audit → enforce. Auto-promotes after 14 days with <10% false positive rate. Safe by default.

💤

Snooze & mark expected

Known cost spike? Snooze for 1-168 hours or mark as expected. Reduces false positive rate over time.

Stop paying enterprise prices
for tools you half-use

+

📈

Statistical baselines

Welford's online algorithm. No batch jobs. Baselines update with every data point. Optimistic locking prevents corruption.

🎯

0-100 anomaly score

Z-score mapped to a simple 0-100 scale. Set your threshold. Default 50 (2σ). Tune per resource type.

🛡️

Governance engine

Shadow → audit → enforce. Auto-promotes after 14 days with <10% false positive rate. Safe by default.

💤

Snooze & mark expected

Known cost spike? Snooze for 1-168 hours or mark as expected. Reduces false positive rate over time.

Stop paying enterprise prices
for tools you half-use

dd0c is built by a solo engineer who got tired of $50K/year DevOps platforms that take 3 months to set up. Each tool does one thing well. Start free. Pay when it saves you money. -

\ No newline at end of file diff --git a/products/marketing/site/dist/drift/index.html b/products/marketing/site/dist/drift/index.html index 52c259e..d5bfa19 100644 --- a/products/marketing/site/dist/drift/index.html +++ b/products/marketing/site/dist/drift/index.html @@ -1,11 +1,11 @@ - dd0c/drift — Terraform Drift Detection
dd0c/drift

Catch Terraform drift before it catches you

+ dd0c/drift — Terraform Drift Detection

dd0c/drift

Catch Terraform drift before it catches you

Lightweight Go agent scans your Terraform state files, compares against live infrastructure, scrubs secrets from reports, and alerts your team on Slack. Know when someone ClickOps'd your production VPC. -

🔍

State scanning

Parses Terraform v4 state files. Detects resource changes, attribute drift, and deleted resources.

🔒

Secret scrubbing

Regex + Shannon entropy detection. AWS keys, RSA keys, PEM certs — scrubbed before reports leave your network.

🔔

Slack alerts

Block Kit messages with severity, affected resources, and one-click remediate/accept buttons.

Install the agent

$ curl -sSL https://install.dd0c.dev/drift | bash
+

🔍

State scanning

Parses Terraform v4 state files. Detects resource changes, attribute drift, and deleted resources.

🔒

Secret scrubbing

Regex + Shannon entropy detection. AWS keys, RSA keys, PEM certs — scrubbed before reports leave your network.

🔔

Slack alerts

Block Kit messages with severity, affected resources, and one-click remediate/accept buttons.

Install the agent

$ curl -sSL https://install.dd0c.dev/drift | bash
 $ dd0c-drift check --state terraform.tfstate --endpoint https://drift.dd0c.dev
  Scanned 47 resources in 1.2s
  3 drifted resources detected (1 critical, 2 medium)

Stop paying enterprise prices
for tools you half-use

dd0c is built by a solo engineer who got tired of $50K/year DevOps platforms that take 3 months to set up. Each tool does one thing well. Start free. Pay when it saves you money. -

\ No newline at end of file diff --git a/products/marketing/site/dist/index.html b/products/marketing/site/dist/index.html index 607818d..6218158 100644 --- a/products/marketing/site/dist/index.html +++ b/products/marketing/site/dist/index.html @@ -1,10 +1,10 @@ - dd0c — DevOps tools that don't waste your time
+ dd0c — DevOps tools that don't waste your time
Now in beta — free while we ship

DevOps tools that
don't waste your time

Six focused tools for the problems you actually have. Route LLM costs. Detect drift. Correlate alerts. Catalog services. Catch cost spikes. Automate runbooks. -

How it works

No enterprise onboarding. No professional services.

01

Sign up in 30 seconds

Email and password. No credit card. No sales call. No "schedule a demo" button.

02

Connect your stuff

AWS credentials, Terraform state, PagerDuty webhook, GitHub org — whatever the tool needs. 5-minute setup guides.

03

See results immediately

First drift scan in under a minute. First cost baseline in an hour. First correlated incident the next time your pager fires.

Simple pricing

Free tier is real. No "contact sales" trap.

Free

$0 forever

Try any tool with generous limits.

  • All 6 tools included
  • 1 connected account per tool
  • 10K events/month (alert)
  • 50 services (portal)
  • 7-day data retention
  • Community support
Start free

Pro

From $19 /mo per tool

Pay only for what you use. Mix and match.

  • Unlimited connected accounts
  • Unlimited events
  • Unlimited services
  • 90-day data retention
  • Slack + email notifications
  • API access + webhooks
  • Priority support
Start free, upgrade later

Self-hosted

$0 your infra

Run the whole stack on your own servers.

  • Docker Compose one-liner
  • All 6 tools included
  • Unlimited everything
  • Your data stays on your network
  • Auto-TLS via Caddy
  • Community support
View setup guide

Stop paying enterprise prices
for tools you half-use

+

How it works

No enterprise onboarding. No professional services.

01

Sign up in 30 seconds

Email and password. No credit card. No sales call. No "schedule a demo" button.

02

Connect your stuff

AWS credentials, Terraform state, PagerDuty webhook, GitHub org — whatever the tool needs. 5-minute setup guides.

03

See results immediately

First drift scan in under a minute. First cost baseline in an hour. First correlated incident the next time your pager fires.

Simple pricing

Free tier is real. No "contact sales" trap.

Free

$0 forever

Try any tool with generous limits.

  • All 6 tools included
  • 1 connected account per tool
  • 10K events/month (alert)
  • 50 services (portal)
  • 7-day data retention
  • Community support
Start free

Pro

From $19 /mo per tool

Pay only for what you use. Mix and match.

  • Unlimited connected accounts
  • Unlimited events
  • Unlimited services
  • 90-day data retention
  • Slack + email notifications
  • API access + webhooks
  • Priority support
Start free, upgrade later

Self-hosted

$0 your infra

Run the whole stack on your own servers.

  • Docker Compose one-liner
  • All 6 tools included
  • Unlimited everything
  • Your data stays on your network
  • Auto-TLS via Caddy
  • Community support
View setup guide

Stop paying enterprise prices
for tools you half-use

dd0c is built by a solo engineer who got tired of $50K/year DevOps platforms that take 3 months to set up. Each tool does one thing well. Start free. Pay when it saves you money. -

\ No newline at end of file diff --git a/products/marketing/site/dist/portal/index.html b/products/marketing/site/dist/portal/index.html index 81a426d..df93475 100644 --- a/products/marketing/site/dist/portal/index.html +++ b/products/marketing/site/dist/portal/index.html @@ -1,8 +1,8 @@ - dd0c/portal — Lightweight Service Catalog & Developer Portal
dd0c/portal

"Who owns this service?"
answered in 2 seconds

+ dd0c/portal — Lightweight Service Catalog & Developer Portal

dd0c/portal

"Who owns this service?"
answered in 2 seconds

Auto-discovers ECS services, Lambda functions, and RDS instances from AWS. Reads CODEOWNERS from GitHub. Full-text search across your entire service catalog. Like Backstage, but you can set it up before lunch. -

🔎

Auto-discovery

Scans AWS (ECS, Lambda, RDS) and GitHub orgs. Partial scan failures stage results — never corrupts your catalog.

👤

Ownership resolution

Config > CODEOWNERS > AWS tags > heuristic. Explicit always wins. No more guessing.

Instant search

Meilisearch-powered full-text search. Falls back to PostgreSQL if Meili is down. Always available.

Stop paying enterprise prices
for tools you half-use

+

🔎

Auto-discovery

Scans AWS (ECS, Lambda, RDS) and GitHub orgs. Partial scan failures stage results — never corrupts your catalog.

👤

Ownership resolution

Config > CODEOWNERS > AWS tags > heuristic. Explicit always wins. No more guessing.

Instant search

Meilisearch-powered full-text search. Falls back to PostgreSQL if Meili is down. Always available.

Stop paying enterprise prices
for tools you half-use

dd0c is built by a solo engineer who got tired of $50K/year DevOps platforms that take 3 months to set up. Each tool does one thing well. Start free. Pay when it saves you money. -

\ No newline at end of file diff --git a/products/marketing/site/dist/route/index.html b/products/marketing/site/dist/route/index.html index 9bba852..c21b81f 100644 --- a/products/marketing/site/dist/route/index.html +++ b/products/marketing/site/dist/route/index.html @@ -1,12 +1,12 @@ - dd0c/route — LLM Cost Router & Dashboard
dd0c/route

Stop burning money on LLM APIs

+ dd0c/route — LLM Cost Router & Dashboard

dd0c/route

Stop burning money on LLM APIs

Drop-in proxy that sits between your app and OpenAI/Anthropic/Google. Routes each request to the cheapest provider that meets your quality threshold. Real-time cost dashboards. Budget alerts before you blow through $10K. -

💸

Cost-based routing

Classify prompt complexity. Route simple queries to cheap models, complex ones to GPT-4. Save 40-60% on average.

📊

Real-time dashboard

Cost per model, per team, per endpoint. Token usage breakdowns. Anomaly detection when spend spikes.

🔑

API key management

Issue scoped keys per team. Set budget caps. Rotate without downtime. Full audit trail.

Integration is one line

# Before
+

💸

Cost-based routing

Classify prompt complexity. Route simple queries to cheap models, complex ones to GPT-4. Save 40-60% on average.

📊

Real-time dashboard

Cost per model, per team, per endpoint. Token usage breakdowns. Anomaly detection when spend spikes.

🔑

API key management

Issue scoped keys per team. Set budget caps. Rotate without downtime. Full audit trail.

Integration is one line

# Before
 OPENAI_BASE_URL=https://api.openai.com/v1
 
 # After
 OPENAI_BASE_URL=https://route.dd0c.dev/v1

Compared to alternatives

Feature dd0c/route LiteLLM Helicone
Cost-based routing Partial
Self-hosted option
Sub-ms latency overhead ✓ (Rust) ~5ms (Python) ~10ms
Starting price $49/mo Free (OSS) $20/mo

Stop paying enterprise prices
for tools you half-use

dd0c is built by a solo engineer who got tired of $50K/year DevOps platforms that take 3 months to set up. Each tool does one thing well. Start free. Pay when it saves you money. -

\ No newline at end of file diff --git a/products/marketing/site/dist/run/index.html b/products/marketing/site/dist/run/index.html index f7c0c81..719b4e1 100644 --- a/products/marketing/site/dist/run/index.html +++ b/products/marketing/site/dist/run/index.html @@ -1,6 +1,6 @@ - dd0c/run — Runbook Automation with Approval Gates
dd0c/run

Runbooks that run themselves
(with your permission)

+ dd0c/run — Runbook Automation with Approval Gates

dd0c/run

Runbooks that run themselves
(with your permission)

Write runbooks in YAML. The Rust agent classifies every command as read-only, modifying, or destructive. Read-only runs automatically. Destructive commands pause and ask for Slack approval. Full audit trail. No YOLO. -

Example runbook

name: restart-ecs-service
+

Example runbook

name: restart-ecs-service
 steps:
   - description: Check current task count
     command: aws ecs describe-services --cluster prod --services api
@@ -18,6 +18,6 @@ Write runbooks in YAML. The Rust agent classifies every command as read-only, mo
       max_attempts: 3
🛑

Safety classification

Pattern-based classification for shell, AWS CLI, kubectl, and terraform commands. Destructive ops always require human approval.

💬

Slack approval flow

Block Kit messages with approve/reject buttons. Click to approve from your phone. No SSH required.

📝

Immutable audit log

Every command, every approval, every exit code. SHA-256 hashed stdout. Append-only. Compliance-ready.

Stop paying enterprise prices
for tools you half-use

dd0c is built by a solo engineer who got tired of $50K/year DevOps platforms that take 3 months to set up. Each tool does one thing well. Start free. Pay when it saves you money. -

\ No newline at end of file diff --git a/products/marketing/site/src/components/CTA.astro b/products/marketing/site/src/components/CTA.astro index 2640136..a9f9230 100644 --- a/products/marketing/site/src/components/CTA.astro +++ b/products/marketing/site/src/components/CTA.astro @@ -9,7 +9,7 @@ that take 3 months to set up. Each tool does one thing well. Start free. Pay when it saves you money.

diff --git a/products/marketing/site/src/components/Hero.astro b/products/marketing/site/src/components/Hero.astro index ed16dbf..976507e 100644 --- a/products/marketing/site/src/components/Hero.astro +++ b/products/marketing/site/src/components/Hero.astro @@ -19,7 +19,7 @@

diff --git a/products/marketing/site/src/components/Pricing.astro b/products/marketing/site/src/components/Pricing.astro index 2bd4676..532ab37 100644 --- a/products/marketing/site/src/components/Pricing.astro +++ b/products/marketing/site/src/components/Pricing.astro @@ -14,7 +14,7 @@ const plans = [ 'Community support', ], cta: 'Start free', - ctaLink: 'https://app.dd0c.dev/signup', + ctaLink: '#waitlist', highlight: false, }, { @@ -32,7 +32,7 @@ const plans = [ 'Priority support', ], cta: 'Start free, upgrade later', - ctaLink: 'https://app.dd0c.dev/signup', + ctaLink: '#waitlist', highlight: true, }, { diff --git a/products/marketing/site/src/pages/alert.astro b/products/marketing/site/src/pages/alert.astro index 543298b..b6115e7 100644 --- a/products/marketing/site/src/pages/alert.astro +++ b/products/marketing/site/src/pages/alert.astro @@ -16,7 +16,7 @@ import CTA from '../components/CTA.astro';
diff --git a/products/marketing/site/src/pages/cost.astro b/products/marketing/site/src/pages/cost.astro index 5ee492c..f9cb98b 100644 --- a/products/marketing/site/src/pages/cost.astro +++ b/products/marketing/site/src/pages/cost.astro @@ -16,7 +16,7 @@ import CTA from '../components/CTA.astro';
diff --git a/products/marketing/site/src/pages/drift.astro b/products/marketing/site/src/pages/drift.astro index 116defa..28f99ca 100644 --- a/products/marketing/site/src/pages/drift.astro +++ b/products/marketing/site/src/pages/drift.astro @@ -16,7 +16,7 @@ import CTA from '../components/CTA.astro';
diff --git a/products/marketing/site/src/pages/portal.astro b/products/marketing/site/src/pages/portal.astro index 52a57bb..407ccea 100644 --- a/products/marketing/site/src/pages/portal.astro +++ b/products/marketing/site/src/pages/portal.astro @@ -16,7 +16,7 @@ import CTA from '../components/CTA.astro';
diff --git a/products/marketing/site/src/pages/route.astro b/products/marketing/site/src/pages/route.astro index 5a64da6..9b57a75 100644 --- a/products/marketing/site/src/pages/route.astro +++ b/products/marketing/site/src/pages/route.astro @@ -16,7 +16,7 @@ import CTA from '../components/CTA.astro';
diff --git a/products/marketing/site/src/pages/run.astro b/products/marketing/site/src/pages/run.astro index fd384f1..e08c7d4 100644 --- a/products/marketing/site/src/pages/run.astro +++ b/products/marketing/site/src/pages/run.astro @@ -16,7 +16,7 @@ import CTA from '../components/CTA.astro';