{{ theme.skipToContentLabel || 'Skip to content' }}

Šablóny a mapovanie výsledkov ​

Šablóny ​

Každý reťazec v definícii adaptéra je šablóna. Výrazy sa píšu ako {{path | filter | filter:arg}}.

Kontext ​

PremennáPríklad
repo.idgithub.com/acme/shop
repo.sluggithub.com-acme-shop
repo.nameshop (z remote)
repo.dirnázov adresára hlavného worktree
repo.rootabsolútna cesta aktuálneho worktree
repo.remote, repo.branch, repo.worktree
project.name[project] name, inak názov z koreňového manifestu, inak repo.name
vars.<name>globálne [vars] zlúčené s vars adaptéra
env.<NAME>premenná prostredia
now.date, now.iso2026-09-28, časová pečiatka RFC 3339
adapter.name

Vstupy operácií:

OpPremenné
search, codequery, limit
historytarget, query (rovnaká hodnota), limit
readuri, level
briefquery, focus
llmprompt
doručenia udalostí (store, …)id, kind, title, status, date, summary, tags, paths, body, markdown, path, visibility, source.repo, source.branch
deklarované nástrojeargs.<name> a každý argument podľa názvu
operácie s príkazmi s output_file = trueoutput_file

Filtre ​

FilterVýsledok
urlencodepercentuálne zakódované
jsonJSON text hodnoty
lower, upper, trim, slug
first_line
join:<sep>spojí zoznam (join:, · join: )
truncate:<n>najviac n znakov
after:<sep>, before:<sep>časť za / pred prvým oddeľovačom (celá hodnota, keď chýba)
default:<literal>použije sa, keď hodnota chýba alebo je prázdna (`{{env.URL
intreťazec naparsovaný ako celé číslo

Ako hodnoty fungujú aj literály v úvodzovkách: {{'text'|upper}}.

Typy ​

  • JSON hodnota, ktorá je presne jeden výraz, si zachová typ: limit = "{{limit}}" pošle číslo, tags = "{{tags}}" pošle pole.
  • Všetko ostatné sa vykreslí ako reťazec.
  • Členy objektov, ktoré sa vykreslia na null, sa vynechajú, takže voliteľné argumenty zmiznú namiesto toho, aby sa poslali prázdne.

Cesty ​

items, text, kľúče where a hodnoty map používajú malý jazyk ciest nad JSON:

SyntaxVýznam
a.b.ckľúče objektov
a[0]index v poli
a[*]každý prvok poľa
*každá hodnota objektu (alebo prvok poľa)
$ alebo prázdnekoreň
`ab`

Príklady: result.memories[*], result.*[*] (každý zoznam pod result), data[*].attributes, results[0].title.

Mapovanie výsledkov ​

Pri operáciách search, history a code sa z každej položky stane výsledok s title, snippet, uri, score, kind a date.

Hodnota mapVýznam
name / a.b / `ab`
re:<regex>prvá zachytávacia skupina (alebo celá zhoda) regexu na texte položky
tpl:<template>šablóna vykreslená voči položke (tpl:notes://{{id}})
=<literal>konštanta

Náhradné kľúče, keď pole nie je namapované:

PoleSkúšané kľúče
titletitle, name, subject, heading, uri, path, id
snippetsnippet, abstract, summary, content, text, description, body, overview
uriuri, url, path, file, id
scorescore, relevance, similarity, rank (inak podľa poradia)
kindkind, type, context_type, category
datedate, created_at, updated_at, time, timestamp

Položky bez titulku aj úryvku sa zahodia. URI, ktoré sa majú dať čítať cez ctx_read, potrebujú schému (notes://…) a operáciu read, ktorá daný prefix owns.

Formáty payloadu ​

formatParsovanie
auto (predvolene)JSON, keď sa dá naparsovať (riadky logu pred JSON sa preskočia), inak text
jsonJSON alebo null
jsonljedna JSON hodnota na riadok → zoznam
linesneprázdne riadky → zoznam reťazcov
textsurový text

Výsledky MCP nástrojov sa najprv rozbalia: structuredContent, ak existuje, inak textový obsah (naparsovaný ako JSON, keď to ide).

Vydané pod licenciou MIT alebo Apache-2.0.