Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Every change to this repo is reviewed by the maintainer.
* @oderajoseph95
8 changes: 7 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,17 @@ A Claude Code plugin that reads your whole Intercom Help Center, compares it wit

Help centers rot in two ways: features ship with no article, and articles keep describing code that changed. This plugin fixes both, and treats one rule as absolute: **a wrong article is worse than a missing one, because the reader acts on it.**

- [How is this different from Intercom's official Claude plugin?](#how-is-this-different-from-intercoms-official-claude-plugin)
- [Live example: help.tacey.app](#live-example-helptaceyapp) · [How is this different from Intercom's official Claude plugin?](#how-is-this-different-from-intercoms-official-claude-plugin)
- [How it works](#how-it-works) · [Quick start](#quick-start-60-seconds) · [Install](#install) · [Commands](#commands) · [Agents](#agents) · [Hooks](#hooks)
- [Configuration](#configuration) · [GitHub Actions](#github-actions) · [Safety model](#safety-model) · [Edge cases](#edge-cases)
- [FAQ](#faq) · [Troubleshooting](#troubleshooting) · [Tested vs not tested](#tested-vs-not-tested) · [Uninstall](#uninstall)

## Live example: help.tacey.app

**[help.tacey.app](https://help.tacey.app)** is the help center for Tacey, a Shopify order-editing app, and it is where this workflow came from. In one pass it went from 7 articles in 6 collections to 109 articles in 22 collections, one collection per feature, every title a question a merchant would search for, and every article citing the code, changelog entry and screenshots it was written from.

Those articles were published by Tacey's in-house publisher, the script this plugin was extracted from and generalized. The plugin itself has not yet been run against a live workspace (see [Tested vs not tested](#tested-vs-not-tested)).

## How is this different from Intercom's official Claude plugin?

They solve different problems. **They're complementary: use Intercom's plugin to learn what customers ask; use this to keep your help center true to your code.**
Expand Down
5 changes: 3 additions & 2 deletions test/hooks-gate-meta.test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,9 @@ import { run as coverage } from "../scripts/coverage-check.mjs";
import { MESSAGES } from "../scripts/lib/messages.mjs";
import { renderTroubleshooting } from "../scripts/gen-docs.mjs";

// Names from the private project this tool was first built in. None may appear in the public repo.
const PRIVATE = new RegExp(["ta" + "cey", "TC" + "Y-[0-9]", "arb" + "-dev", "VUL" + "CAN", "RO" + "NIN", "ARB" + "ITER", "KING" + " JOE", "ar" + "byn", "act" + "orly"].join("|"), "i");
// Internal names from the project this tool was first built in. None may appear in the public repo.
// The product name itself is public on purpose: help.tacey.app is the README's live example.
const PRIVATE = new RegExp(["TC" + "Y-[0-9]", "arb" + "-dev", "VUL" + "CAN", "RO" + "NIN", "ARB" + "ITER", "KING" + " JOE", "ar" + "byn", "act" + "orly"].join("|"), "i");
const bash = (cwd, command) => ({ cwd, tool_name: "Bash", tool_input: { command } });

export const tests = [
Expand Down
Loading