{# Read-only, and the reason is on the page rather than only in a docstring. `config get` and `config set` have no route on any network surface: reading and writing configuration over the network is how an installation gets repointed at a different data directory by something holding a key. This page does not reach around that — everything on it is a fact the diagnostics already report about the *running* system, not the contents of a file. #}{% extends layout %} {% import "macros.html" as m %} {% block content %}

Changing any of this

Configuration is not editable from a browser, and there is no endpoint that would make it so. Reading and writing configuration over the network is how an installation gets repointed at a different data directory by something holding a key, so config get and config set stay on the command line and the MCP tool — the two surfaces a person is at.

manicule config show
manicule config set rag.profile precise

What follows is the installation's posture as doctor and the index report it: live facts about this process, not a rendering of the file.

Diagnosis

{% if panels.doctor.ok %}

{{ m.state(panels.doctor.data.state) }}

{% for check in panels.doctor.data.checks %} {% endfor %}
CheckStateDetail
{{ check.name }}{{ m.state(check.state) }}{{ check.detail }}
{% else %}{{ m.failed(panels.doctor) }}{% endif %}

What the index committed to

{% if panels.index.ok %}
Data directory
{{ panels.index.data.data_dir }}
Schema revision
{{ panels.index.data.schema_revision or 'none' }}
Embedding
{{ panels.index.data.embedding or 'not decided' }}
Embedding fingerprint
{{ panels.index.data.embed_fingerprint or 'none — the index will accept whatever the first ingest brings' }}
Chunking
{{ panels.index.data.chunking or 'not decided' }}
Chunking fingerprint
{{ panels.index.data.chunk_fingerprint or 'none' }}
Documents
{{ panels.index.data.documents }}
Chunks
{{ panels.index.data.chunks }}

The fingerprints are shown in their canonical form. A prettied identity is one nobody can compare, and comparing them is the only thing they are for.

{% else %}{{ m.failed(panels.index) }}{% endif %}

What this surface will not do

Each of those is absent from the HTTP API by name, with a test asserting the absence. This surface adds no operation of its own, so it inherits every one of them.

{% endblock %}