DEV Community

Chad Priest profile picture

Chad Priest

Building Vodou - local-first AI harness. Memory, MCP & skills under ChatGPT, Claude, Cursor. Rust engine. Not another chatbot.

Location Michigan ✋ Joined Joined on  Personal website https://vodou.ai

Work

CTO at Vodou

Your entitlement check ships in a file the user can edit

Your entitlement check ships in a file the user can edit

Comments
9 min read

Want to connect with Chad Priest?

Create an account to connect with Chad Priest. You can also sign in below to proceed if you already have an account.

Already have an account? Sign in
Your 'first' AI memory claim dies in one store search

Your 'first' AI memory claim dies in one store search

Comments
7 min read
Under a hard project filter, a wrong memory tag is data loss

Under a hard project filter, a wrong memory tag is data loss

Comments
8 min read
Our memory inject into ChatGPT existed nowhere durable

Our memory inject into ChatGPT existed nowhere durable

Comments
8 min read
A 60-second poll gave my memory extractor a 61-minute p90

A 60-second poll gave my memory extractor a 61-minute p90

Comments
7 min read
A corruption alarm that latches goes silent exactly when it's right

A corruption alarm that latches goes silent exactly when it's right

Comments
8 min read
PRAGMA quick_check reported FTS5 corruption on a healthy file

PRAGMA quick_check reported FTS5 corruption on a healthy file

Comments
8 min read
Your router matched the right keyword in the wrong sentence

Your router matched the right keyword in the wrong sentence

Comments
7 min read
Hallucinated tool URLs don't error. They render empty cards

Hallucinated tool URLs don't error. They render empty cards

Comments
4 min read
Your config-overrides.js is dead if Docker runs react-scripts

Your config-overrides.js is dead if Docker runs react-scripts

Comments
4 min read
Your CAPTCHA secret is a flag your desktop client can't see

Your CAPTCHA secret is a flag your desktop client can't see

Comments
7 min read
`alias || default` runs before alias resolution, so your default never gets a say

`alias || default` runs before alias resolution, so your default never gets a say

Comments
6 min read
Your prompt has more writers than your context budget knows about

Your prompt has more writers than your context budget knows about

Comments
7 min read
Our DeepSeek Harness plugin turned out to be nine lines of YAML

Our DeepSeek Harness plugin turned out to be nine lines of YAML

Comments
8 min read
Your LLM fallback is probably recording the model that failed

Your LLM fallback is probably recording the model that failed

Comments
7 min read
140 agent runs had zero memory and my grader stayed green

140 agent runs had zero memory and my grader stayed green

Comments
8 min read
A QA step that cannot go red is worse than no step at all

A QA step that cannot go red is worse than no step at all

Comments
8 min read
Our autonomous agent finished 10 tasks and left zero turn records

Our autonomous agent finished 10 tasks and left zero turn records

Comments
7 min read
Your extension installs fine and never asks for the daemon

Your extension installs fine and never asks for the daemon

Comments
4 min read
Your anti-bot check only binds the clients that opt into it

Your anti-bot check only binds the clients that opt into it

Comments
8 min read
Chrome refuses an iframe silently, and onload still fires

Chrome refuses an iframe silently, and onload still fires

Comments
7 min read
A 'new' badge is a lie unless something records when you looked

A 'new' badge is a lie unless something records when you looked

Comments 1
7 min read
A trust pin with no undo is an outage you shipped on purpose

A trust pin with no undo is an outage you shipped on purpose

Comments 1
7 min read
My skill miner learned from my cron jobs: 8 of 26 drafts

My skill miner learned from my cron jobs: 8 of 26 drafts

Comments
4 min read
Your config editor saves the template, not the file that runs

Your config editor saves the template, not the file that runs

Comments
5 min read
A parked human-in-the-loop prompt needs a clock, or a restart is your only exit

A parked human-in-the-loop prompt needs a clock, or a restart is your only exit

Comments
8 min read
Your prompt fence is hardcoded to one source, not nine

Your prompt fence is hardcoded to one source, not nine

Comments
5 min read
Your commit message claimed a call path that doesn't exist

Your commit message claimed a call path that doesn't exist

Comments
8 min read
25 budgets declared, 3 enforced: the fallback was Infinity

25 budgets declared, 3 enforced: the fallback was Infinity

Comments
3 min read
Your MCP audit table probably has no producer

Your MCP audit table probably has no producer

1
Comments 1
7 min read
Nine agents in one worktree and each one knew only the branch name

Nine agents in one worktree and each one knew only the branch name

Comments
7 min read
The trust label your registry declares never reaches the model

The trust label your registry declares never reaches the model

Comments
7 min read
The runs panel said 'No runs recorded yet'. The ledger had every run.

The runs panel said 'No runs recorded yet'. The ledger had every run.

Comments
8 min read
A console leaked one CSS class and hid 11 days of receipts

A console leaked one CSS class and hid 11 days of receipts

Comments
7 min read
Your memory extractor tags boat repair as a codebase gotcha

Your memory extractor tags boat repair as a codebase gotcha

Comments
4 min read
Your first-run path is the only code that runs with defaults off

Your first-run path is the only code that runs with defaults off

Comments
6 min read
Two writers, one judge: how a review queue became 90% noise

Two writers, one judge: how a review queue became 90% noise

Comments
7 min read
The dedupe key was set before the fetch, so it never retried

The dedupe key was set before the fetch, so it never retried

Comments
6 min read
Your message table is storing your UI, not your transcript

Your message table is storing your UI, not your transcript

1
Comments
7 min read
A skill that finishes into a tab nobody has open did not finish

A skill that finishes into a tab nobody has open did not finish

Comments
6 min read
The renderer existed. Nothing on that surface ever called it.

The renderer existed. Nothing on that surface ever called it.

Comments
8 min read
Your source-trust score is grading the pipe, not the source

Your source-trust score is grading the pipe, not the source

Comments
5 min read
66,570 characters reached the model and nothing logged them

66,570 characters reached the model and nothing logged them

2
Comments
7 min read
Prompt injection defense that survives to turn 40

Prompt injection defense that survives to turn 40

1
Comments
7 min read
Your MCP allowlist controls tool names, not what they return

Your MCP allowlist controls tool names, not what they return

Comments
7 min read
Every stdio MCP server you spawn inherits your whole .env

Every stdio MCP server you spawn inherits your whole .env

Comments
4 min read
A rule at byte 37,367 is not a rule if the cap is 32 KiB

A rule at byte 37,367 is not a rule if the cap is 32 KiB

Comments
7 min read
Your link checker read planned downtime as a broken URL

Your link checker read planned downtime as a broken URL

Comments
8 min read
Two tables both called 'skill', and nothing knew which was which

Two tables both called 'skill', and nothing knew which was which

Comments
8 min read
Your reranker fell back to cosine and the floor kept firing

Your reranker fell back to cosine and the floor kept firing

Comments
4 min read
Two writers, one Markdown file: your appends get misfiled

Two writers, one Markdown file: your appends get misfiled

Comments
7 min read
Your MEMORY.md is a file nobody writes to. Render it instead.

Your MEMORY.md is a file nobody writes to. Render it instead.

Comments
8 min read
A 400-byte cap crashed my memory daemon on one emoji

A 400-byte cap crashed my memory daemon on one emoji

Comments
8 min read
Your document chunker is a memory chunker, and it quadruples your store

Your document chunker is a memory chunker, and it quadruples your store

Comments
7 min read
Per-site memory off switches only work if every reader asks the same authority

Per-site memory off switches only work if every reader asks the same authority

Comments
7 min read
Your Agent's Memory Has No Idea Where It Was

Your Agent's Memory Has No Idea Where It Was

Comments
9 min read
Your retired button is still mounted, still handling clicks

Your retired button is still mounted, still handling clicks

Comments
4 min read
Your isolated test lab isn't isolated: 3 rows, 8 daemons

Your isolated test lab isn't isolated: 3 rows, 8 daemons

Comments
5 min read
Why My LLM Agent Fabricated Numbers From Stale Context

Why My LLM Agent Fabricated Numbers From Stale Context

Comments
6 min read
Every copy of the rule agreed. That was the bug.

Every copy of the rule agreed. That was the bug.

Comments
7 min read
loading...