Plank help · updated 2026-10-22

Searching Plank's docs and samples

Every space's assistant can search Plank's own help center, dashboard templates, use cases, kits and deck builders with plank_docs_search, so it starts from what Plank already ships instead of from scratch.

Agents: fetch the raw markdown of this page at /en/help/docs-search.md

Searching Plank's docs and samples

plank_docs_search searches Plank's own documentation and ready-made samples. It is the same for every space and holds nothing from any space: no files, chats or customer data. For this space's own past work use plank_history_search instead.

What it searches

  • help — every topic of this help center, in English and Russian
  • template — dashboard templates («Шаблоны»)
  • use_case — the published use-case scenarios shown in Settings → Use cases
  • kit — the kits Plank ships (1C, bank statements, ЭСФ, payroll, finance, social media, Kaspi…): each kit's manifest, its READMEs and the header (usage) of each script, never the whole code
  • asset — the deck and report builders this help center serves (plank_deck.py and its siblings)

The index is rebuilt by Plank when it ships a release, not per question, so a call is one quick search.

When to use it

  • Before building from scratch — a dashboard, a script, a deck, an integration, an automation. Plank may already ship a template, a kit or a builder.
  • Before guessing how a Plank feature behaves, or telling the person Plank cannot do something.
  • Not for this space's files or earlier chats (plank_history_search), and not for the web.

One or two specific queries in the person's words work best: «дашборд продаж с воронкой», «import a bank statement into 1C».

How to call it

plank_docs_search({ query: "сверка с контрагентом в 1С" })
plank_docs_search({ query: "weekly sales report", kinds: ["template", "use_case"], limit: 5 })

kinds narrows to help, template, use_case, kit, asset; limit is 1-10 (default 5).

Each result is a card: the kind, the title and section, the ref (help:<slug>, template:<slug>, use_case:<slug>, kit:<id>/<path>, asset:<file>), a URL, one line on how to use it, and a snippet. The snippet is not the answer — open the source and take steps, names and limits from it:

  • a help topic — curl -s https://plank.md/help/<slug>.md (Russian: /ru/help/<slug>.md)
  • a template — plank_dashboard_template_get({ slug }), then build on the person's data and publish with template_slug (see /help/dashboards)
  • an asset — download it with the curl the card gives
  • a kit file — read it in the space if the kit is installed, otherwise see below

If no card is about what was asked, say so plainly and do not invent a Plank feature.

A kit that is not in this space

A space receives a kit only when it is created from a template that carries it, so a card may name a kit the space does not have. scripts/.plank-kits.json lists the kits (and versions) this space received; a missing file means none were recorded.

To add a kit, fetch its manifest — https://plank.md/help/kits/<id>/manifest.json — which lists every file with its URL and sha256 and an installOrder that brings the kits it depends on. Install from the workspace root, adding only files that are absent:

BASE=https://plank.md/help/kits
KIT=<id>
for K in $(curl -fsS "$BASE/$KIT/manifest.json" | jq -r '.installOrder[]'); do
  curl -fsS "$BASE/$K/manifest.json" | jq -r '.files[].path' | while read -r p; do
    [ -e "$p" ] && continue
    mkdir -p "$(dirname "$p")"
    curl -fsS "$BASE/$K/files/$p" -o "$p"
  done
done

Never overwrite a file that already exists: a kit in a space is often adapted to that company. Updating an installed kit has its own procedure (see /help/1c-starter-kit, «Updating a kit that is already installed»). Tell the person what you installed.