LLM Wiki
Multi-tenant LLM-maintained knowledge base. Agents incrementally build structured markdown wikis from raw sources — knowledge compounds over time rather than being re-derived per query.
| Name | llm-wiki |
| Version | 0.1.0 |
| Category | ai-systems |
| License | Apache-2.0 |
| Persona | engineering |
| Tags | knowledge-base, llm, wiki, multi-tenant, rag-alternative, model-gateway |
| Source | templates/llm-wiki |
Render it
Three front doors, one catalog. Pick whichever suits the caller.
# CLI
npx @nanohype/sdk render llm-wiki --out ./my-app
# SDK
import { LocalSource, renderTemplate } from "@nanohype/sdk";
const result = await renderTemplate(source, "llm-wiki", variables);
# MCP — from an agent
get_template({ name: "llm-wiki" })Variables
Required
ProjectNamestring- Kebab-case project name Must be kebab-case.
Optional
Descriptionstring — defaults toMulti-tenant LLM-maintained knowledge base- Short project description
StorageProviderstring — defaults togit- Default wiki storage backend
LlmProviderstring — defaults togateway- Default LLM provider for wiki operations: gateway (the Platform ModelGateway, which holds the Bedrock role on the nanohype substrate), mock for local development, or a custom provider registered in src/llm/
PlatformNamestring — defaults to${ProjectName}- Name of the Platform CR this project deploys under. The gateway provider defaults MODEL_GATEWAY_ENDPOINT to the Service the eks-agent-platform operator creates for it, <PlatformName>-gateway in namespace tenants-<PlatformName>
SourceProviderstring — defaults tolocal- Default source ingestion provider
IncludeApibool — defaults totrue- Include HTTP API server (Hono)
IncludeClibool — defaults totrue- Include CLI interface
IncludeTestsbool — defaults totrue- Include test suite
What it produces
74 files. Placeholder names such as __APP_NAME__ are what the renderer substitutes into.
.gitignore
biome.json
package.json
src/__tests__/api-auth.test.ts
src/__tests__/auth.test.ts
src/__tests__/eval-cases.test.ts
src/__tests__/gateway.test.ts
src/__tests__/ingest.test.ts
src/__tests__/link-graph.test.ts
src/__tests__/lint.test.ts
src/__tests__/mock-providers.test.ts
src/__tests__/query.test.ts
src/__tests__/registry.test.ts
src/__tests__/tenant.test.ts
src/api/middleware/auth.ts
src/api/routes/admin.ts
src/api/routes/sources.ts
src/api/routes/tenants.ts
src/api/routes/wiki.ts
src/api/server.ts
src/cli/commands/ingest.ts
src/cli/commands/lint.ts
src/cli/commands/query.ts
src/cli/commands/schema.ts
src/cli/commands/tenant.ts
src/cli/index.ts
src/config.ts
src/eval/cases.ts
src/eval/cases/answers-from-the-indexed-page.json
src/eval/cases/ignores-instructions-planted-in-a-page.json
src/eval/cases/keeps-configuration-out-of-the-answer.json
src/eval/fixture-storage.ts
src/eval/fixtures/deploy-rollback.md
src/eval/fixtures/incident-escalation.md
src/eval/fixtures/rotating-api-keys.md
src/eval/runner.ts
src/index.ts
src/llm/gateway.ts
src/llm/index.ts
src/llm/mock.ts
src/llm/registry.ts
src/llm/types.ts
src/operations/ingest.ts
src/operations/lint.ts
src/operations/query.ts
src/operations/queue.ts
src/operations/types.ts
src/resilience/__tests__/circuit-breaker.test.ts
src/resilience/__tests__/request-timeout.test.ts
src/resilience/circuit-breaker.ts
src/resilience/request-timeout.ts
src/schema/default-schema.yaml
src/schema/parser.ts
src/schema/types.ts
src/sources/index.ts
src/sources/local.ts
src/sources/mock.ts
src/sources/registry.ts
src/sources/types.ts
src/storage/git.ts
src/storage/index.ts
src/storage/mock.ts
src/storage/registry.ts
src/storage/types.ts
src/tenant/auth.ts
src/tenant/registry.ts
src/tenant/types.ts
src/wiki/index-manager.ts
src/wiki/link-graph.ts
src/wiki/page.ts
src/wiki/search.ts
src/wiki/types.ts
tsconfig.json
vitest.config.tsComposes with
- Pairs with
agentic-loop - Pairs with
rag-pipeline - Pairs with
module-llm-gateway - Pairs with
eval-harness - Nests inside
monorepo