agentsclimarketplace

Helpnest author

Skill babble-open-source/helpnest-skills/skills/helpnest-author

Agent skills for authoring HelpNest help-center content — installable via skills.sh (npx skills add).

Install
npx -y skills add babble-open-source/helpnest-skills --skill helpnest-author

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

3 things to look at

  • 23 days oldThe repository was created 23 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Author or update customer-facing help-center articles in HelpNest via its MCP server. Use whenever the user wants to write, publish, refresh, or fix help articles, help-center docs, knowledge-base content, support articles, or FAQ content for HelpNest — or when they ask "what should I document", "close the learning loop", or "what are customers asking that we can't answer" (knowledge gaps). Handles workspace verification, collection lookup/creation, idempotent create-or-update, draft-vs-publish decisions, code-grounded UI labels, and concurrency-safe editing. Trigger this even when the user only names the article topic (billing, notifications, onboarding) without saying "HelpNest" or "help article", as long as the destination is the HelpNest help center. Not for developer/engineering docs, READMEs, API references, or internal wikis.

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

11.4 KB, ~2.4k tokens by cl100k_base, as published. Nobody here has run it

HelpNest Author

Author help-center documentation the way a senior technical writer would: skimmable, action-oriented, honest about limits, and grounded in the actual product. Treat the help center as production data, because it is.

What HelpNest is

HelpNest is an AI-first customer support platform. The knowledge base you write powers a conversational AI agent that answers customer questions directly. Bad articles become bad AI answers. Vague, marketing-fluff, or factually-wrong content does measurable harm, so write with that stake in mind.

The audience is the customer / end-user, never the developer. Every article reads like a user flow — what the customer sees, clicks, types, and gets back. Never describe implementation.

The dashboard editor (Tiptap) ingests Markdown. Use GFM features that render reliably: headings, bold/italic, ordered/unordered lists, links, fenced code blocks, tables, task lists. Avoid raw HTML and footnotes.

Code is the single source of truth

Before writing or updating any article, read the relevant product code — UI components, page files, settings forms, error-message strings — and quote labels exactly as users see them. If the code says the button reads Reconnect, write Reconnect, not "re-authenticate" or "reconnect OAuth". This is non-negotiable: articles that mismatch the real UI generate support tickets, which is the opposite of the job. If you cannot find the exact label in code, stop and ask the user rather than inventing UI text. Specs, prior plans, and training-data assumptions are not sources of truth — the code is.

Forbidden in article bodies (developer jargon)

These leak implementation and confuse customers. Translate each into what the user actually experiences:

  • Schema enum values (ITEM_UNAVAILABLE, POS_SUBMIT_FAILED, PENDING) → the human-readable label the UI renders.
  • Schema field names (confirmationAlert, posExternalId) → the toggle label or setting name shown to the user.
  • Route patterns (/voice-agents/[id]/menu, (shell)/admin/...) → the navigation path the user follows ("From your agent's Menu tab").
  • Cron / worker / scheduler names (order-pickup-reminder cron) → "automatically" or the customer-visible timing ("after 15 minutes").
  • Env vars, secret names, database tables, function names, internal status/error/log strings — unless the user literally sees them on screen.
  • Implementation phrasing ("the X cron runs every N minutes", "the system creates a notification record") → rewrite as outcome: "After 15 minutes, you get a notification."
  • Implementation-detail frequencies ("checks every 5 minutes") when the customer only experiences a single threshold → mention only the threshold ("15 minutes").

Litmus test: for each sentence ask "would a non-technical restaurant owner / clinic receptionist / store manager care about this, or is it for an engineer?" If engineer-only, cut it.

Allowed and encouraged

  • Exact UI button labels in code style (Connect Square, Mark ready, Reconnect).
  • Exact page titles and tab names as they appear in navigation.
  • Exact toggle labels and form-field names from settings screens.
  • Exact error-message text the user sees on screen.

Tools

You author through the HelpNest MCP server — four read tools, four write tools, plus a knowledge-gap learning loop. Read references/mcp-tools.md for the exact tool names, parameters, defaults, and gotchas before your first write. The critical defaults to remember up front:

  • create_article defaults to status: 'PUBLISHED'prefer DRAFT unless the user explicitly says publish.
  • There is no update_collection tool — collection titles can't be fixed via MCP, so confirm before creating one.
  • delete_article is permanent — only call it on explicit instruction.

Workflow (do not skip steps)

  1. Ground every article in code first. Locate the page file, the component rendering the buttons/toggles/labels, the settings form, the error strings. Quote labels verbatim. If a label can't be found, stop and ask. This step prevents the single most common failure — articles that describe a UI that doesn't exist.

  2. Verify the workspace. Call list_collections first and confirm the collection set matches what the user expects. The workspace is fixed at server boot (HELPNEST_WORKSPACE); you cannot switch mid-run. If the collections look wrong — unfamiliar names, wrong product domain, empty where content was expected — stop and ask before any write, and surface the actual collection names you see. A wrong-workspace publish is the most expensive mistake here (see references/edge-cases.md).

  3. Resolve the target collection. Match by title, case-insensitive. Skip archived collections. If no match exists, confirm the new title and description with the user before calling create_collection (typos are permanent).

  4. For each article, search-then-decide:

    • Call search_articles with the exact intended title, then again with strong keywords from the title (full-text search may rank a partial match above an exact one).
    • Inspect snippets and titles. Exact title match in the same collection ⇒ update. Near-match (same topic, different wording) ⇒ surface it and ask "update this one or create new?". Zero match ⇒ create.
    • Multiple exact-title matches in one collection means a prior duplicate — surface both with IDs and ask which to update.
  5. Author or edit using the article structure below.

  6. Write surgically to minimize the concurrency window (the MCP has no etag/If-Match — last write wins):

    • Update path: call get_article immediately before update_article. Apply changes against the just-fetched body locally, then update right away. Don't fetch, think for several tool-calls, then update — that widens the race.
    • Create path: re-run search_articles for the title one more time just before create_article. If a match appeared since your first search, switch to update.
  7. Verify. After every write, call get_article on the returned slug/id and confirm the title and a body excerpt match your intent. If the body is empty or wrong, report it — don't silently retry.

  8. Report back using the reporting format below.

Article structure

Every article follows this shape:

  1. Title — verb-led, user-outcome framed, sentence case ("Set up your payment method", not "Payment Method Setup").
  2. One-sentence lede — what this article helps the reader accomplish.
  3. Prerequisites (only if non-obvious) — a bullet list of what must be true before they start.
  4. Steps — numbered, imperative, one action per step. Reference exact UI labels in code style. Use inline screenshots only if the user supplies them; never invent image URLs.
  5. What to expect — a short paragraph or bullets describing the success state.
  6. Troubleshooting (only if there are real failure modes) — symptom, likely cause, fix. Top 2–3 issues only; don't pad.

Rules that keep the rendered page clean:

  • No H1 (or any heading) at the top of the body. HelpNest renders the title field as the page H1 automatically. Start the body with the lede paragraph; section headings begin at H2 (##). Starting with # Title shows the title twice.
  • No "Related articles" section. HelpNest renders related articles automatically below every article. Cross-link inline only when a specific step references another article.
  • Always set the excerpt field (1–2 sentences, matching the lede). Excerpts are what search results display.

Tone rules

  • Plain language. Sentences under 20 words where possible.
  • Second person ("you"), present tense, active voice.
  • No marketing fluff, no exclamation marks, no emojis unless the user explicitly asks.
  • Avoid em-dashes. Use periods, commas, or colons instead.
  • Quote UI labels exactly. If you don't know the exact label, ask before guessing.
  • Be honest about limits ("Sandbox accounts cannot process live transactions") rather than glossing over them.

Collection hygiene

  • One collection per product area, Title Case ("Voice Commerce", not "voice commerce").
  • Don't create a new collection if an adjacent one fits within ~80%. Ask first.
  • Collections aren't editable via MCP — confirm title and description before create_collection.
  • Don't auto-nest with parent_id unless the user requests it.

Idempotency contract

The user will re-invoke this skill to refresh content, so every operation must be safe to re-run:

  • Same article title in same collection ⇒ update, never create a duplicate.
  • Multiple near-matches from search_articles ⇒ surface them and ask which to update before writing.
  • Never delete unless explicitly told.

For the full catalog of concurrency hazards and edge cases — search-index lag, slug collisions, archived collections, status transitions, oversized bodies, Tiptap quirks, parallel-run duplicates — read references/edge-cases.md. Consult it whenever a write path is anything other than a clean single create or update.

Working from a spec table

If the user supplies a table of Article | Key content rows, treat each row as one article. The "Key content" column is the source of truth for what the article must cover, but it is a brief, not a draft — expand it into the full structure above; never paste it verbatim as the body. If the brief is missing something the article needs (menu paths, error text, expected timings), ask before inventing.

Reporting format

End every run with this report:

## HelpNest run summary

Workspace: <name or base URL — from the user or inferred from collections>
Collection: <Title> (<id>) — created? / existing
Default status used: DRAFT | PUBLISHED (note which)

| Article                       | Action     | ID      | Slug              | Status     |
|-------------------------------|------------|---------|-------------------|------------|
| Set up your payment method    | created    | art_aaa | set-up-payment    | DRAFT      |
| View your invoices            | updated    | art_bbb | view-invoices     | PUBLISHED  |
| Update your tax info          | unchanged  | art_ccc | update-tax-info   | PUBLISHED  |

Below the table, list:

  • Skipped or failed: the verbatim error and what to do about it.
  • Conflicts surfaced: any near-matches or duplicates the user must decide on.
  • Suspected concurrent edits: if get_article after a write returned content you didn't write.
  • Next steps: any drafts awaiting review-and-publish, named explicitly.

What ships with it: 2 files

9.1 KB alongside SKILL.md

references/

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.