thcode integrates with AI for Thai through a versioned, registry-driven capability catalog. Rather than scraping the upstream website at startup, the CLI ships a checked-in Catalog Manifest — a reviewed offline snapshot that lists every catalogued service with its identity, modality, endpoint, privacy classification, and support level. This means catalog discovery is deterministic and works offline. What it does not mean is that a listed service is ready to call: catalog presence and API entitlement are entirely separate things.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Temicide/thcode/llms.txt
Use this file to discover all available pages before exploring further.
The manifest carries a canonical disclaimer: “Catalog presence is not API entitlement.” A service must progress through the full support-level ladder before thcode will invoke it.
Catalog Manifest
The manifest shipped with this release has the following metadata:| Field | Value |
|---|---|
manifestVersion | 1 |
observationDate | 2026-07-12 |
source | https://aiforthai.in.th (reviewed snapshot; ADR 0011) |
Support Levels
Every entry in the catalog carries one of four support levels, defined in ADR 0011:Catalogued
The service is visible and inspectable in
/tools — you can read its metadata, description, endpoint, and privacy classification. It is not claimed callable. The CLI will not invoke a catalogued-only service and will not describe it as available.Integrated
The service has an implemented endpoint mapping, a credential policy, and an adapter handler. Transport requests can be built and dispatched.
Verified
The service passes a repeatable live contract test against the actual endpoint using a reviewed, built-in (non-user) fixture. The registry entry carries a passing
latestContractTestResult.Current Catalog
The Phase 1 manifest contains four services spanning all four category buckets defined in the upstream catalog:| Service ID | Upstream Name | Category | Modality | Endpoint | Support Level |
|---|---|---|---|---|---|
t-ocr | T-OCR | vision | image | https://api.aiforthai.in.th/ocr | catalogued |
speech-to-text | Speech-to-Text | conversation | audio | https://api.aiforthai.in.th/partii-webapi | catalogued |
extract-address | Extract Address | other | text | https://api.aiforthai.in.th/textmedad | catalogued |
named-entity-recognition | Named Entity Recognition | language | text | https://api.aiforthai.in.th/thainer | catalogued |
T-OCR
Thai text detection and recognition from images. Category: vision, modality: image.
Speech-to-Text
Thai automatic speech recognition. Category: conversation, modality: audio.
Extract Address
Parse Thai free-text addresses into structured components. Category: other, modality: text.
Named Entity Recognition
Identify people, places, and organizations in Thai text. Category: language, modality: text.
Browsing the Catalog with /tools
The /tools command is the primary interface for exploring and managing the catalog. It exposes the following operations:
Browse
Browse
List all entries with their IDs, upstream names, categories, modalities, and support levels. The manifest version and observation date are shown so you always know which snapshot you are looking at.
Search
Search
Filter entries by any term — English or Thai. Each entry carries a
searchTerms array that includes both English keywords and Thai-script equivalents (for example, อ่านตัวอักษร for T-OCR, ถอดเสียง for Speech-to-Text).Inspect
Inspect
View the full metadata for a single entry: endpoint, modality, privacy classification, retention policy, confirmation policy, input limits, contract version, adapter version, and the latest contract-test result.
Enable / Disable
Enable / Disable
Toggle whether a service is active within the current session. Disabling a service prevents it from being proposed by the tool router even when a task matches its search terms.
Diagnose / Retest
Diagnose / Retest
Run a health check or re-execute the service’s contract test. For catalogued services, diagnosis will report
Catalogued — Not available yet because no adapter has been registered.Tool Router and Schema Isolation
When a task arrives, the tool router inspects the prompt and matches it against every entry’s search terms. If a single service wins, the router produces apropose routing decision containing a TaskRelevantSchema for only that one service — the reasoning model never receives all four schemas at once. If two or more candidates tie, the router issues a clarify decision asking the user to resolve the ambiguity. If the matched service is catalogued-only, the router returns a refused decision with reason Catalogued — Not available yet.
Privacy and Consent
Each registry entry carries aprivacyClassification with a category, a list of data classes, and a requiresConsent flag. Services that handle identity, biometric, medical, or other sensitive data require stricter consent flows and data-handling policies before they can be enabled. The confirmationPolicy on each entry specifies whether explicit per-invocation consent is required and the scope that consent covers.