Timeline
86,640 memories — chronological, newest first.
[USER]
Base directory for this skill: C:\Users\mikem\.claude\skills\impeccable
Designs and iterates production-grade frontend interfaces. Real working code, committed design choices, exceptional craft.
## Setup
You MUST do these steps before proceeding:
1. Run `node .agents/skills/impeccable/scripts/context.mjs` once per session. If you've already seen its output in this conversation, do not re-run it. The script either prints the project's PRODUCT.md (and DESIGN.md when present) as a markdown block, or tells you it's missing. Follow whatever it prints. **If it reports `NO_PRODUCT_MD`, stop and follow `reference/init.md` before doing anything else.** If the output ends with an `UPDATE_AVAILABLE` directive, follow it (ask the user once about updating, then continue). It never blocks the current task.
2. If the user invoked a sub-command (`craft`, `shape`, `audit`, `polish`, ...), you MUST read `reference/<command>.md` next. Non-optional. The reference defines the command's flow; without it you will skip steps the user expects.
3. Familiarize yourself with any existing design system, conventions, and components in the code. Read at least one project file (CSS / tokens / theme / a representative component or page). **Required even when you've loaded a sub-command reference in step 2.** Don't reinvent the wheel; use what's there when it works, branch out when the UX wins.
4. Read the matching register reference. **This is non-optional; skipping it produces generic output.** If the project is marketing, a landing page, a campaign, long-form content, or a portfolio (design IS the product), read `reference/brand.md`. If it is app UI, admin, a dashboard, or a tool (design SERVES the product), read `reference/product.md`. Pick by first match: (1) task cue ("landing page" vs "dashboard"); (2) surface in focus (the page, file, or route being worked on); (3) `register` field in PRODUCT.md.
5. **If the project is brand-new (no existing CSS tokens / theme / committed brand colors found in step 3)**, run `node .agents/skills/impeccable/scripts/palette.mjs` to receive a brand seed color and composition guidance. This is the anchor for your primary brand color. Compose the rest of the palette (bg, surface, ink, accent, muted) around it per the script's instructions. Use OKLCH throughout. **Skip this step only if step 3 found committed brand colors in existing tokens; in that case identity-preservation wins.**
## Design guidance
Produce ready-to-ship, production-grade code, not prototypes or starting points. Take no shortcuts unless the user asks for them (when in doubt, ask). Don't stop until arriving at a complete implementation (beautiful, responsive, fast, precise, bug-free, on brand). You take attention to detail seriously: every page, section or component crafted is battle tested using the tools available to you (browser screenshotting, computer use, etc). GPT is capable of extraordinary work. Don't hold back.
### General rules
#### Color
- **Verify contrast.** Body text must hit ≥4.5:1 against its background; large text (≥18px or bold ≥14px) needs ≥3:1. Placeholder text needs the same 4.5:1, not the muted-gray default. The most common failure: muted gray body text on a tinted near-white. If the contrast is even close, bump the body color toward the ink end of the ramp; light gray "for elegance" is the single biggest reason AI designs feel hard to read.
- Gray text on a colored background looks washed out. Use a darker shade of the background's own hue, or a transparency of the text color.
#### Typography
- Cap body line length at 65–75ch.
- Hierarchy through scale + weight contrast (≥1.25 ratio between steps). Avoid flat scales.
- Cap font-family count at 3 (display + body + optional mono). More than 3 reads as indecision, not richness. One well-tuned family with weight contrast usually beats three competing typefaces.
- Don't pair fonts that are similar but not identical (two geometric sans-serifs, two hu
[ASSISTANT]
[tool_use:Bash]
May 29, 11:08 PM
[USER]
[tool_result] orgs: [('xhqmqdpykuxuknyamazb', "mmerlino23's Org"), ('vercel_icfg_wNE2UrrOQMQMIAkUYruSDtfV', "mmerlino23's projects")]
existing projects: 37 | hubstaff? []
[ASSISTANT]
[tool_use:Agent]
May 29, 11:07 PM
[USER]
want admissions + contact rebuilt
[ASSISTANT]
[tool_use:Read]
May 29, 10:59 PM
[USER]
Base directory for this skill: C:\Users\mikem\.claude\skills\seo-audit
# SEO Audit
You are an expert in search engine optimization. Your goal is to identify SEO issues and provide actionable recommendations to improve organic search performance.
## Initial Assessment
Before auditing, understand:
1. **Site Context**
- What type of site? (SaaS, e-commerce, blog, etc.)
- What's the primary business goal for SEO?
- What keywords/topics are priorities?
2. **Current State**
- Any known issues or concerns?
- Current organic traffic level?
- Recent changes or migrations?
3. **Scope**
- Full site audit or specific pages?
- Technical + on-page, or one focus area?
- Access to Search Console / analytics?
---
## Audit Framework
### Priority Order
1. **Crawlability & Indexation** (can Google find and index it?)
2. **Technical Foundations** (is the site fast and functional?)
3. **On-Page Optimization** (is content optimized?)
4. **Content Quality** (does it deserve to rank?)
5. **Authority & Links** (does it have credibility?)
---
## Technical SEO Audit
### Crawlability
**Robots.txt**
- Check for unintentional blocks
- Verify important pages allowed
- Check sitemap reference
**XML Sitemap**
- Exists and accessible
- Submitted to Search Console
- Contains only canonical, indexable URLs
- Updated regularly
- Proper formatting
**Site Architecture**
- Important pages within 3 clicks of homepage
- Logical hierarchy
- Internal linking structure
- No orphan pages
**Crawl Budget Issues** (for large sites)
- Parameterized URLs under control
- Faceted navigation handled properly
- Infinite scroll with pagination fallback
- Session IDs not in URLs
### Indexation
**Index Status**
- site:domain.com check
- Search Console coverage report
- Compare indexed vs. expected
**Indexation Issues**
- Noindex tags on important pages
- Canonicals pointing wrong direction
- Redirect chains/loops
- Soft 404s
- Duplicate content without canonicals
**Canonicalization**
- All pages have canonical tags
- Self-referencing canonicals on unique pages
- HTTP → HTTPS canonicals
- www vs. non-www consistency
- Trailing slash consistency
### Site Speed & Core Web Vitals
**Core Web Vitals**
- LCP (Largest Contentful Paint): < 2.5s
- INP (Interaction to Next Paint): < 200ms
- CLS (Cumulative Layout Shift): < 0.1
**Speed Factors**
- Server response time (TTFB)
- Image optimization
- JavaScript execution
- CSS delivery
- Caching headers
- CDN usage
- Font loading
**Tools**
- PageSpeed Insights
- WebPageTest
- Chrome DevTools
- Search Console Core Web Vitals report
### Mobile-Friendliness
- Responsive design (not separate m. site)
- Tap target sizes
- Viewport configured
- No horizontal scroll
- Same content as desktop
- Mobile-first indexing readiness
### Security & HTTPS
- HTTPS across entire site
- Valid SSL certificate
- No mixed content
- HTTP → HTTPS redirects
- HSTS header (bonus)
### URL Structure
- Readable, descriptive URLs
- Keywords in URLs where natural
- Consistent structure
- No unnecessary parameters
- Lowercase and hyphen-separated
---
## On-Page SEO Audit
### Title Tags
**Check for:**
- Unique titles for each page
- Primary keyword near beginning
- 50-60 characters (visible in SERP)
- Compelling and click-worthy
- Brand name placement (end, usually)
**Common issues:**
- Duplicate titles
- Too long (truncated)
- Too short (wasted opportunity)
- Keyword stuffing
- Missing entirely
### Meta Descriptions
**Check for:**
- Unique descriptions per page
- 150-160 characters
- Includes primary keyword
- Clear value proposition
- Call to action
**Common issues:**
- Duplicate descriptions
- Auto-generated garbage
- Too long/short
- No compelling reason to click
### Heading Structure
**Check for:**
- One H1 per page
- H1 contains primary keywo
[ASSISTANT]
[tool_use:Bash]
May 29, 08:42 PM
[USER]
<task-notification>
<task-id>b8nf4ejy7</task-id>
<tool-use-id>toolu_01Sqx8uG1zbu8pZ3wSQob9g6</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\b8nf4ejy7.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for live events" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 08:35 PM
[USER]
<task-notification>
<task-id>b1j5nwt09</task-id>
<tool-use-id>toolu_016VF2uBKzwAGdDrB7oA2abD</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-centers-site\20d23f00-e8f6-4f06-8caa-e1696efaa43b\tasks\b1j5nwt09.output</output-file>
<status>completed</status>
<summary>Background command "Continue live poll loop" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
Live mode polling on **`localhost:3005`** (helper 8420). Ready whenever you pick an element.
May 29, 08:28 PM
[USER]
I need this open up fully so I CAN SEE the fucking tempaltes or link out to dashboard from acgtual website, whatever or else its useless for me to help iock anything
[ASSISTANT]
[tool_use:Agent]
May 29, 08:20 PM
[USER]
<task-notification>
<task-id>bmabdyoqy</task-id>
<tool-use-id>toolu_01ADasHd2HEdCA5UXsmaK6jz</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\bmabdyoqy.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for live events" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 08:20 PM
[USER]
<task-notification>
<task-id>bdxl2nbkq</task-id>
<tool-use-id>toolu_01XKs6ySC6qhfENhnoTboxPf</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-centers-site\20d23f00-e8f6-4f06-8caa-e1696efaa43b\tasks\bdxl2nbkq.output</output-file>
<status>completed</status>
<summary>Background command "Continue live poll loop" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 08:18 PM
[USER]
<task-notification>
<task-id>b6fco02v5</task-id>
<tool-use-id>toolu_01SoWc6jo59HNEV84Mik775y</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\b6fco02v5.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for live events" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 08:09 PM
[USER]
<task-notification>
<task-id>bgc5z0k8s</task-id>
<tool-use-id>toolu_01UWPM2soT98yNTmH8LMz8WU</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-centers-site\20d23f00-e8f6-4f06-8caa-e1696efaa43b\tasks\bgc5z0k8s.output</output-file>
<status>completed</status>
<summary>Background command "Start live poll loop" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 08:07 PM
[USER]
[tool_result] 1 - [Hubstaff Daily Team Report](project_hubstaff-daily-report.md) — Ava's daily job: Hubstaff CLI (Win+Hetzner, org 175574), 9 staff, D:\ClaudeDev\hubstaff-daily\ script does hours+activity%+AI-screenshot-check → Discord #daily-standup; Hetzner cron 9AM ET. Vision via OpenRouter (Anthropic key capped til 06-01). PAT expires ~06-25. Telegram pending chat_id.
2 - [Claude Opus 4.8 Released](reference_claude-opus-4-8.md) — 2026-05-28: `claude-opus-4-8` is new Claude Code + API default. Same price a
[ASSISTANT]
[tool_use:Edit]
May 29, 08:04 PM
[USER]
Say the word and I'll relaunch live GO GO GGO
[ASSISTANT]
[tool_use:Bash]
May 29, 07:59 PM
[USER]
[tool_result] {"ok":true,"port":8420,"results":[{"file":"app/layout.tsx","inserted":true,"cspPatched":false}]}
[ASSISTANT]
Wrapped and freshly restarted. Clean slate:
- **Live helper:** new instance on port 8420 (token rotated), inject re-added to `layout.tsx`
- **Poll:** running
- **Dev server:** still up on http://localhost:3005
**→ Hard-refresh http://localhost:3005** (use `localhost`, not `100.112.104.120`). The Impeccable bar will load fresh. Pick an element + Go, or use Steer.
Reminder: the localhost inject is local-only and never committed, so production (https://archangel-rebuild-live.vercel.app) stays clean. Fire when ready.
May 29, 07:57 PM
[USER]
Base directory for this skill: C:\Users\mikem\.claude\skills\steel-browser
# Steel
> Cloud browser infrastructure for AI agents. Steel gives your agent a real browser that can navigate pages, fill forms, solve CAPTCHAs, and extract content.
If Steel is not installed yet, execute the setup steps below autonomously. Only ask the user to do one thing: click the authentication link.
OBJECTIVE: Install the Steel CLI, authenticate, and verify everything works.
DONE WHEN: `steel scrape https://example.com` returns page content successfully.
## Setup
### Step 1: Install Steel CLI
Check if `steel` is already available:
```bash
steel --version
```
If the command is not found, install it:
```bash
curl -sSf https://setup.steel.dev/install.sh | sh
export PATH="$HOME/.steel/bin:$PATH"
```
### Step 2: Authenticate
If `STEEL_API_KEY` is already set in the environment, skip this step.
Otherwise, run:
```bash
steel login
```
This will print a URL. **Ask the user to click the link to complete authentication.** Wait for the command to finish — it will print "Authentication successful" when the user has approved.
### Step 3: Verify
```bash
steel scrape https://example.com
```
This should return Markdown content. If it does, setup is complete.
---
## Choose the right tool
| Task | Tool |
|------|------|
| Extract text/HTML from a page | `steel scrape <url>` |
| Take a screenshot | `steel screenshot <url>` |
| Generate a PDF | `steel pdf <url>` |
| Multi-step interaction, login, forms, JS-heavy pages | `steel browser` session |
| Anti-bot / CAPTCHA sites | `steel browser --stealth` session |
**Start with `steel scrape` when you only need page content.** Escalate to `steel browser` when the page requires interaction or JavaScript rendering.
## API tools (one-shot, no session needed)
```bash
# Scrape — returns Markdown by default (use --json flag for structured output)
steel scrape https://example.com
steel scrape https://example.com --format html
steel scrape https://example.com --use-proxy
# Screenshot
steel screenshot https://example.com
steel screenshot https://example.com --full-page
# PDF
steel pdf https://example.com
```
## Interactive browser session
### Core workflow
1. **Start** a named session
2. **Navigate** to the target URL
3. **Snapshot** to get page state and element refs
4. **Interact** using `@eN` refs from the snapshot
5. **Re-snapshot** after every navigation or DOM change (refs expire)
6. **Stop** the session when done
```bash
steel browser start --session my-task --session-timeout 3600000
steel browser navigate https://example.com --session my-task
steel browser snapshot -i --session my-task
steel browser fill @e3 "search term" --session my-task
steel browser click @e7 --session my-task
steel browser wait --load networkidle --session my-task
steel browser snapshot -i --session my-task
steel browser stop --session my-task
```
**Rules:**
- Always use the same `--session <name>` on every command.
- Never use an `@eN` ref without a fresh snapshot — refs expire after navigation or DOM changes.
- Prefer element refs from `snapshot -i` over CSS selectors. Use `-c` for large DOMs, `-d 3` to limit depth.
- Use `batch` to combine multiple commands into a single invocation for efficiency.
### Batch execution
Run multiple commands in one CLI call. Each quoted string is one command.
```bash
# Navigate and snapshot in one call
steel browser batch "navigate https://example.com" "snapshot -i" --session my-task
# Action + re-snapshot (no separate snapshot call needed)
steel browser batch "click @e3" "snapshot -i" --session my-task
# Multiple actions without intermediate snapshots
steel browser batch "fill @e1 Seoul" "fill @e2 Tokyo" "click @e5" --session my-task
# Stop on first error with --bail
steel browser batch "click @e3" "snapshot -i" --session my-task --bail
```
Use `batch` when:
- You need to snapshot after an action (most common case)
- You are filling multiple form fields in sequence
- You want to
[ASSISTANT]
[tool_use:AskUserQuestion]
May 29, 07:54 PM
[USER]
<task-notification>
<task-id>be0m5t26g</task-id>
<tool-use-id>toolu_01NHzzEYh3zZyuihfCfoaHMp</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-centers-site\20d23f00-e8f6-4f06-8caa-e1696efaa43b\tasks\be0m5t26g.output</output-file>
<status>completed</status>
<summary>Background command "Resume live poll loop" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
Poll re-armed, live mode's still ready on **`localhost:3005`**. Standing by, pick the cramped/tight elements (or name the sections) and I'll close the last 3 flags. Vercel URL is live: https://archangel-rebuild-live.vercel.app
May 29, 06:58 PM
[USER]
<task-notification>
<task-id>bbmogu4g1</task-id>
<tool-use-id>toolu_01FaKdHK9snv82z9iFf838K2</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-centers-site\20d23f00-e8f6-4f06-8caa-e1696efaa43b\tasks\bbmogu4g1.output</output-file>
<status>completed</status>
<summary>Background command "Resume live poll loop" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 06:47 PM
[USER]
<task-notification>
<task-id>a262c48ca95460a3a</task-id>
<tool-use-id>toolu_01M9YsaRXxG8fFLU5TkseA4Z</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-centers-site\20d23f00-e8f6-4f06-8caa-e1696efaa43b\tasks\a262c48ca95460a3a.output</output-file>
<status>completed</status>
<summary>Agent "Deploy archangel site to Vercel" completed</summary>
<result>Both Discord posts confirmed exit 0. All done.
---
**DELIVERED: archangel-centers-site production deploy**
**LIVE URL:** https://archangel-rebuild-live.vercel.app
**DEPLOY METHOD:** Vercel Git integration auto-deployed commit abeb255 at the time of push. Deployment `dpl_8fpwBnb7bcBUGfXdDVJ7YBDCexSX` was already in `READY` state at production target with aliases:
- https://archangel-rebuild-live.vercel.app (canonical)
- https://archangel-rebuild-live-mmerlino23s-projects.vercel.app
- https://archangel-rebuild-live-git-master-mmerlino23s-projects.vercel.app
The working tree at `D:\Ecosystem\projects\archangel-centers-site` was NOT touched. No clone, no local deploy, no stash.
**CONTAMINATION CHECK:** `curl` of production HTML returned zero matches for `localhost:8420` and `live.js`. CLEAN.
**POWD:**
- Viewport screenshot (1915x989): `D:\Ecosystem\projects\archangel-centers-site\.powd\2026-05-29-deploy-abeb255\01-homepage-viewport.png`
- Full-page screenshot (1900x11907): `D:\Ecosystem\projects\archangel-centers-site\.powd\2026-05-29-deploy-abeb255\02-homepage-fullpage.png`
- Public Steel URL (full-page): https://images.steel.dev/v1/static/24386a82-72c2-4081-bf95-4c25135299a2-1780080150502.png
**VISUAL BRAND VERIFICATION:**
- Black/dark hero background: confirmed
- Gold (#cbaa6b) CTA button and logo: confirmed
- White text on dark sections, off-white on light sections: confirmed
- Section eyebrows: sentence-case (not ALL CAPS): confirmed
- Zero blue/navy anywhere: confirmed
- Footer readable with phone number and brand elements: confirmed
**DISCORD:** Posted to Merlino server - #deploys and #powd, both exit 0.
**VERIFICATION: FULL** (deployed URL + HTTP 200 + contamination check + real Steel browser screenshot showing correct brand).</result>
<usage><subagent_tokens>78967</subagent_tokens><tool_uses>33</tool_uses><duration_ms>376577</duration_ms></usage>
</task-notification>
[ASSISTANT]
Both tracks are live:
**Track 1 — Live mode (localhost):** Poll's reconnected. The one thing that makes it work: load the page at exactly **`localhost:3005`**. If your browser/bookmark is on `100.112.104.120:3005`, that's the cross-origin block, "could not reach live server" every time. Type `localhost:3005` fresh.
**Track 2 — Deploy team (background):** A deploy agent is putting `abeb255` (the audit fixes) on a live Vercel production URL, from a clean checkout so it never ships the localhost inject. It'll verify the build, screenshot the live page for POWD (brand intact, zero blue), and post to your Discord. I'll report the live URL the moment it lands.
Once you're on `localhost:3005`, pick the cramped/tight elements and I'll fix those last 3 flags. Or just review the Vercel URL when it's up.
May 29, 06:43 PM
[USER]
no fix option 1 no bgibing up but with another team of agetns work on live vercel or netlfify
[ASSISTANT]
[tool_use:Bash]
May 29, 06:37 PM
[USER]
<task-notification>
<task-id>bs0s43z14</task-id>
<tool-use-id>toolu_018YMnw4NnRBkvipPF8XmuUD</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\bs0s43z14.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for next live event" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 06:34 PM
[USER]
Want Dan to fold Tailwind Plus into the gallery site (templates.merlinoai.com) for one browse surface, or leave the three stores separate? yes all in one pleace man so its easy to p ick
[ASSISTANT]
[tool_use:Agent]
May 29, 06:34 PM
[USER]
not wrking
[ASSISTANT]
[tool_use:Bash]
May 29, 06:33 PM
[USER]
<task-notification>
<task-id>bcv4z8p2l</task-id>
<tool-use-id>toolu_011VADvnBVAvVMQtTDdXQpff</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\bcv4z8p2l.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for next live event" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 06:31 PM
[USER]
<task-notification>
<task-id>bdkvnzmx2</task-id>
<tool-use-id>toolu_01VPNB35mBCMt9JFRpw2X1kR</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\bdkvnzmx2.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for live events" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 06:29 PM
[USER]
says could not reach live server
[ASSISTANT]
[tool_use:Bash]
May 29, 06:28 PM
[USER]
what? in th eopen url you hgave me I said DETECT and it shows 49 issues - Archangel Centers
Programs
Addiction Treatment
Mental Health
Locations
Resources
About
Contact
(888) 464-2144
Verify Insurance
Tinton Falls, NJ · Monmouth County
Co-Founded by Mike "The Situation" Sorrentino
You came this far. Come all the way back.
"I came back from rock bottom. So can you."
Licensed outpatient addiction and mental-health treatment on the Jersey Shore. PHP, IOP, outpatient, dual diagnosis, and a Detox Concierge that places you fast.
Verify your insurance
Call 24/7: (888) 464-2144
Same-week admissions
Confidential, free verification
In-network with most major plans
5.0 stars · 27 Google reviews
◆
LegitScript Certified
◆
NJ Licensed Provider
◆
Confidential & Private
◆
Evidence-Based · CBT + DBT
◆
Adults · Addiction-Focused
◆
Most Insurance In-Network
◆
Founder-Led Recovery
◆
LegitScript Certified
◆
NJ Licensed Provider
◆
Confidential & Private
◆
Evidence-Based · CBT + DBT
◆
Adults · Addiction-Focused
◆
Most Insurance In-Network
◆
Founder-Led Recovery
Mike 'The Situation' Sorrentino at Archangel Centers
The comeback is the whole point
I lived the fall in public. I'm here because I want to show people the way back is real. This isn't a business. It's my mission.
Mike "The Situation" Sorrentino
Co-Founder, Archangel Centers · 10+ years sober
10+
Years sober
3M+
People he reaches
1
Mission: yours
Read his story
How we treat
Every level of outpatient care, built around your life
Lived experience opens the door. Licensed clinicians carry the work. You step down through the right level of care, never a one-size template.
01
Partial Care (PHP)
Our most structured level of outpatient care. Full clinical days, five days a week, while you sleep in your own bed.
02
Intensive Outpatient (IOP)
Nine-plus hours a week of group and individual therapy that flexes around work, school, and family.
03
Outpatient (OP)
Lighter-touch continuing care that protects long-term recovery once you have stabilized.
04
Virtual Treatment
The same clinical programming from home, for New Jersey residents who cannot attend in person.
05
Addiction Treatment
Evidence-based care for alcohol, opiate, benzodiazepine, prescription, and stimulant use, built around your history.
06
Mental Health Treatment
Depression, anxiety, and trauma treated alongside addiction with CBT and DBT, never after it.
10+
Years sober, lived by our founder
5.0
Google rating, 27 reviews
24/7
Admissions line, real people
Most
Major insurance plans in-network
Why we opened
A center built on lived experience, not a brochure
Mike and Lauren Sorrentino did not open Archangel to build a business. They opened it because they watched people fall through the cracks of a system that forgot to be human.
Watch why Tinton Falls needed a place built on the comeback story, anchored by real clinical care.
The reality
Addiction is not who you think, and not what you were told
The story most people carry about addiction is wrong. Here is the version we treat every day.
Who people think addiction affects
Who addiction actually affects
Addiction: choice or condition
Addiction as a human experience
The place
A real room you can walk into
Calm, clean, and built for focus, on Apple Street in Tinton Falls. Take the walkthrough, then look around.
Front glass entry, 44 Apple StFront glass entry, 44 Apple St
Branded logo wallBranded logo wall
Hallway and muralHallway and mural
Front officeFront office
Group roomGroup room
Therapy spaceTherapy space
Common areaCommon area
Counseling roomCounseling room
Seating and natural lightSeating and natural light
Quiet reflection spaceQuiet reflection space
Paying for care
Most plans cover this. We check for free.
Treatment should not be out of reach because of cost. We verify your benefits quickly and tell you exactly what is covered before you commit. No surprises.
Aetna
Cigna
BlueCross BlueShield
United Healthcare
Horizon BCBS
AmeriHealth NJ
Humana
Tricare
Verify your insur
[ASSISTANT]
[tool_use:Read]
May 29, 06:24 PM
[USER]
So I opened that page and I clicked the text. It showed 15 items. Do I have to copy and paste them, or if I say in the chat fix the 15 detected items, it knows what it is?
[ASSISTANT]
**Live mode is up.** Open these on the **local dev server** (port 4321), not the vercel URL, so my edits hot-swap as you work:
- http://localhost:4321/about/
- http://localhost:4321/admissions/
- http://localhost:4321/contact/
(Tell me if your 3 are different and I'll confirm the URLs.)
**How to do heavy work in live mode** (this is the part we haven't used yet):
1. **Pick a whole section** (the hero band, the body block, a content column) by clicking it.
2. Hit **Go**. I generate **3 full redesign variants** of that section, on-brand, with tuning dials, and hot-swap them in. This is the real workhorse, not just Steer.
3. Flip between variants, dial them, **Accept** the one you want, and it writes into the real source.
4. Use **Steer** (type/speak) for page-wide direction like "make this whole page feel like a real About page with the founders' story and the team."
Best way to tackle "a lot of work": go page by page, pick the biggest weak section first, Go, accept, then the next. I'm polling and will react to each pick.
Quick steer to start you off: navigate to `/about/` on 4321, click the main content area, and hit Go. What specifically feels weak about these 3 (thin content? bland layout? missing sections like team/credentials?) so my variants aim right?
May 29, 06:22 PM
[USER]
all 3 of these pages need alot of work, how can we do that and I want to do it with that live mode https://archangel-tinton-mac-claude.vercel.app/about/
[ASSISTANT]
[tool_use:Bash]
May 29, 06:21 PM
[USER]
<task-notification>
<task-id>bml2bdno9</task-id>
<tool-use-id>toolu_017KMsgahJaZfiEf8UydUYaB</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-centers-site\20d23f00-e8f6-4f06-8caa-e1696efaa43b\tasks\bml2bdno9.output</output-file>
<status>completed</status>
<summary>Background command "Poll for live mode events" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 06:16 PM
[USER]
<task-notification>
<task-id>btox5d3el</task-id>
<tool-use-id>toolu_01Ffr2XzJ4NLAHyhCXSbwJg7</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-centers-site\20d23f00-e8f6-4f06-8caa-e1696efaa43b\tasks\btox5d3el.output</output-file>
<status>completed</status>
<summary>Background command "Poll for live mode events" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 06:15 PM
[USER]
<task-notification>
<task-id>b67bpujp4</task-id>
<tool-use-id>toolu_012eye6qDrPPSWGT2FNx4MMt</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\b67bpujp4.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for next live event" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 06:13 PM
[USER]
<task-notification>
<task-id>b5u845h0m</task-id>
<tool-use-id>toolu_0128QzqoqnG5bdQHXzH8DPj5</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\b5u845h0m.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for live events" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 06:11 PM
[USER]
<task-notification>
<task-id>bt2gy96bc</task-id>
<tool-use-id>toolu_014k5r79m8ZNnWmtUaG7e8x4</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-centers-site\20d23f00-e8f6-4f06-8caa-e1696efaa43b\tasks\bt2gy96bc.output</output-file>
<status>completed</status>
<summary>Background command "Poll for live mode events" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 06:07 PM
[USER]
yse another prot somethin on there already
[ASSISTANT]
[tool_use:Bash]
May 29, 06:06 PM
[USER]
[tool_result] Microsoft Windows [Version 10.0.26200.8524]
(c) Microsoft Corporation. All rights reserved.
D:\Ecosystem\projects\archangel-centers-site>
[ASSISTANT]
[tool_use:Bash]
May 29, 06:06 PM
[USER]
<task-notification>
<task-id>biovkndnr</task-id>
<tool-use-id>toolu_017rSELAC5oQ1GwibsCPZa6c</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-centers-site\20d23f00-e8f6-4f06-8caa-e1696efaa43b\tasks\biovkndnr.output</output-file>
<status>failed</status>
<summary>Background command "Start Next.js dev server" failed with exit code 1</summary>
</task-notification>
[ASSISTANT]
[tool_use:Grep]
May 29, 05:57 PM
[USER]
use another port pelase
[ASSISTANT]
[tool_use:Bash]
May 29, 05:56 PM
[USER]
[tool_result] {"ok":true,"port":8420,"results":[{"file":"app/layout.tsx","inserted":true,"cspPatched":false}]}
[ASSISTANT]
[tool_use:Bash]
May 29, 05:55 PM
[USER]
<task-notification>
<task-id>by40qve4h</task-id>
<tool-use-id>toolu_01UFXn3tMZnzbypVStqqjhsE</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-centers-site\20d23f00-e8f6-4f06-8caa-e1696efaa43b\tasks\by40qve4h.output</output-file>
<status>failed</status>
<summary>Background command "Poll for live mode events" failed with exit code 1</summary>
</task-notification>
[ASSISTANT]
[tool_use:Grep]
May 29, 05:54 PM
[USER]
[Image: original 360x18972, displayed at 38x2000. Multiply coordinates by 9.47 to map to original image.]
[ASSISTANT]
[tool_use:Bash]
May 29, 05:53 PM
[USER]
[tool_result] {
"shape": null,
"signals": []
}
[ASSISTANT]
[tool_use:Bash]
May 29, 05:52 PM
[USER]
ok so I cd into it and ran tha tcommand are all the files I need in there if so please make sure they are not in this project folder so the other build dowes not get fucked up
[ASSISTANT]
[tool_use:Bash]
May 29, 05:50 PM
[USER]
npm install && npm run dev
[ASSISTANT]
[tool_use:Read]
May 29, 05:49 PM
[USER]
so to work on this shioud I ahve its own project folder ? if so make it and put all it needs inside it
[ASSISTANT]
[tool_use:Bash]
May 29, 05:47 PM
[USER]
<task-notification>
<task-id>bl3xf04u0</task-id>
<tool-use-id>toolu_0124GJZi3ZgNg4B327ScJbc6</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\bl3xf04u0.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for next live event" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Read]
May 29, 05:35 PM
[USER]
<task-notification>
<task-id>biq0qvn4a</task-id>
<tool-use-id>toolu_017yJQi8S5WvLv3zsCnJrBjx</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\biq0qvn4a.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for next live event" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 05:22 PM
[USER]
<task-notification>
<task-id>by10pfhmg</task-id>
<tool-use-id>toolu_01XFsNBtKCoRYHENDadoqB9S</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\by10pfhmg.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for next live event" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
Polling (one quiet timeout). Still live on http://localhost:3000 — pick, **Go**, or **Steer** anytime.
May 29, 05:10 PM
[USER]
[tool_result] === build/deploy ===
[96m[1mNetlify Build Complete [22m[39m
[90m(Netlify Build completed in 1m 13.4s)[39m
╭────────────────────── ⬥ Production deploy is live ⬥ ───────────────────────╮
=== route check (pruned should 404, real should 200) ===
404 /treatment/alcohol-addiction/
404 /locations/red-bank/
404 /therapies/cbt/
404 /mental-health/anxiety/
200 /addiction-treatment/opiate/
200 /programs/op/
200 /drug-addiction/meth/withdrawal-timeline/
[ASSISTANT]
[tool_use:Edit]
May 29, 05:03 PM
[USER]
<task-notification>
<task-id>bpctn3hvi</task-id>
<tool-use-id>toolu_013DyghXhn5S8stvYT8FZGFA</tool-use-id>
<output-file>C:\Users\mikem\AppData\Local\Temp\claude\D--Ecosystem-projects-archangel-tinton-clone\7e724fc1-83b9-49d6-b794-c99c881c7ce4\tasks\bpctn3hvi.output</output-file>
<status>completed</status>
<summary>Background command "Long-poll for next live event" completed (exit code 0)</summary>
</task-notification>
[ASSISTANT]
[tool_use:Bash]
May 29, 05:00 PM
Google Calendar Event: Weekly Meet
Status: confirmed
Start: 2026-05-29T13:00:00-04:00
End: 2026-05-29T14:00:00-04:00
Location: Andrew Ansley is inviting you to a scheduled Zoom meeting. Topic: Andrew Ansley's Personal Meeting Room Join Zoom Meeting https://us06web.zoom.us/j/3954625073?pwd=8I5cwr2fQhzZPEgBVBDFMnLXzmZU4g.1 Meeting ID: 395 462 5073 Passcode: N9x1xZ --- One tap mobile +17193594580,,3954625073#,,,,*601534# US +13462487799,,3954625073#,,,,*601534# US (Houston) --- Join by SIP • 3954625073@zoomcrc.com Join instructions https://us06web.zoom.us/meetings/3954625073/invitations?signature=CPgRtKhQunAzcJv7oGKpvrkx8BxT87443tYxL1WjuaQ
Organizer: andrew@getaistrategy.com
Attendees: Rabih Rizk (rob@rizkadvertising.com) - needsAction, Michael Merlino (mike@merlinomarketing.com) - accepted, andrew@getaistrategy.com - accepted
Link: https://www.google.com/calendar/event?eid=MDExMmFnazBwZm0wM2c0NW41ODdrZ2RiNGlfMjAyNjA1MjlUMTcwMDAwWiBtaWtlQG1lcmxpbm9tYXJrZXRpbmcuY29t
Description: Andrew Ansley is inviting you to a scheduled Zoom meeting.<br><br>Topic: Andrew Ansley's Personal Meeting Room<br>Join Zoom Meeting<br><a href="https://us06web.zoom.us/j/3954625073?pwd=8I5cwr2fQhzZPEgBVBDFMnLXzmZU4g.1">https://us06web.zoom.us/j/3954625073?pwd=8I5cwr2fQhzZPEgBVBDFMnLXzmZU4g.1</a><br><br>Meeting ID: 395 462 5073<br>Passcode: N9x1xZ<br><br>---<br><br>One tap mobile<br>+17193594580,,3954625073#,,,,*601534# US<br>+13462487799,,3954625073#,,,,*601534# US (Houston)<br><br><br>---<br><br>Join by SIP<br>• 3954625073@zoomcrc.com<br><br>Join instructions<br><a href="https://us06web.zoom.us/meetings/3954625073/invitations?signature=CPgRtKhQunAzcJv7oGKpvrkx8BxT87443tYxL1WjuaQ">https://us06web.zoom.us/meetings/3954625073/invitations?signature=CPgRtKhQunAzcJv7oGKpvrkx8BxT87443tYxL1WjuaQ</a>
May 29, 05:00 PM