Skip to content

KG Studio

KG Studio is Fontana’s Knowledge Graph workspace UI: a Fontana Files sidebar for namespaces and source files, plus selection cards whose tabs host linked views with shared selection. Select a namespace, folder, or file in the sidebar to open its card. Select an entity, a document, or a chunk in any view, and every other open view focuses on it. Each overlay gets the visual idiom that actually fits it: trees, sequences, and similarity fields are different shapes of data and deserve different renderers.

  • Welcome: when you have not opened a namespace, folder, or file, Knowledge Graph shows a welcome with the graph presets (Structural, Semantic, Ontology, Vector, and Provenance) and Add namespace.
  • Secondary sidebar: the File System explorer lists namespaces tagged only as a Knowledge Graph. In Knowledge Graph config, turn on Show Workspaces, Show Skills, Show Agents, or another kind to include namespaces that also carry that tag. Browse namespaces, folders, and files; create a namespace; upload, rename, move, and delete sources. A chevron on each namespace row collapses or expands that namespace’s folders and files. While you search, a collapsed namespace opens when the query matches something inside it, and it collapses again when you clear the search. Your browser tab for this page is Knowledge Graph | Fontana AI.
  • Enabled / Disabled: each namespace, folder, and file card header has a named toggle (Enabled / Disabled on the track). Disabled rows stay in the sidebar, grayed out. While a parent is disabled, descendant toggles stay locked off; their own flags are unchanged and apply again when you re-enable the parent. New PARSE, INDEX, NER and EMBED jobs do not enqueue for effectively disabled files. Re-enable does not auto-reprocess. Graph search, agent Knowledge Graph tools, MCP file lists, and @-mentions skip disabled content; Studio still lists the grayed rows.
  • Delete a namespace: from the namespace menu, choose Delete namespace. The namespace leaves the sidebar immediately. Fontana deletes every file inside it. You cannot recreate that name until cleanup finishes. The menu does not include a second folder Delete.
  • Selection: opening a namespace, folder, or file uses the same pane as File System. Cmd-click a file or folder (Ctrl-click on Windows and Linux) to add or remove it in that namespace. Preview lists the items you selected. Opening a namespace or a folder starts on Preview. A namespace also has Graph, Ontology Agent, Status, and Config. A folder also has Graph, Status, and Config. Choosing Graph on the item you are viewing keeps that tab until you open another namespace or folder. A file, folder, or namespace also has History for versions of that path. A file shows only the tabs that apply, in this order: Preview, Parsed, Source, Graph, and History. Preview is the friendly view: a PDF in the browser viewer, a csv or tsv in the table explorer, rendered HTML, an image, or audio and video. A markdown file renders on Preview, including its frontmatter as a table. Parsed is the markdown Fontana made from a document such as a PDF or a Word document, one page at a time, and a table that continues onto the next page keeps its header. Source is the raw file in an editor, and binary files leave it out. Graph hosts the namespace’s one graph, controlled by visibility toggles.
  • Processing status: each card header shows current status (Queued, Processing, Processed, Failed, or Idle for files; rollups for folders and namespaces) plus the processing graph. Each node is a bar: green for done, blue for running, amber for pending, red for failed, light green for skipped, with a done/total pill; hover a node for a plain explanation of the step and its counts. Index counts a file only once every enabled step before it has finished. Counts come from the engine’s status for the namespace, read every few seconds, so they move only when a step finishes for a file.

The Graph tab shows one graph of the namespace. A glass bar at the bottom of the canvas picks a named layer (Provenance first) and opens Nodes for which kinds to show. Each kind toggle is the kind’s icon with a count next to it.

Toggle Shows
Namespace The namespace itself, the root of the tree.
Folders Your folders, each inside its parent.
Files Your files, each inside its folder.
Page index Each document’s section outline (PageIndex).
Chunks The chunks the AI reads and cites, each under the section that covers it.
Entities Extracted entities.
Entity types The published types of your ontology.
Communities Groups of entities that link to each other more than to the rest, each named after its best-connected members. Available while Entities are shown.

The count next to a toggle is how many nodes of that kind the namespace holds under your current selection, whether the toggle is on or off, so you know what switching it on would draw. Communities show a count once they have been computed, while their toggle is on. A card at the top-right describes the view, for example “Entities grouped by type: 1,817 types, 7,115 typed entities.” Select a node and that card shows the selection instead. You can drag its inner edge to widen it. Changing a kind by hand leaves no named layer highlighted.

Links follow from the kinds you show. There is nothing to switch on for them:

  • Containment: every node links to the nearest shown level above it (namespace, folders, files, page index, chunks). Hide a level and the next one down links straight to the one above, so with Files and Chunks on and Page index off, chunks hang under their files.
  • Mentions: chunks link to the entities they name; with Chunks off, files link to the entities their chunks name.
  • Types and communities: each entity links to its type and to its community. With Entities off, entity types hang under the namespace; entities hang under the namespace only while nothing between them (folders, files, sections, chunks, types) is shown.
  • Relations: the extracted relationships between entities are always drawn between the entities you show, named on the link.
  • Similarity: files whose whole-file embeddings are close link with their score, while Files are on and Folders are off, so the files show how they relate instead of where they sit.

Entities that share a sentence are not drawn as links; that co-occurrence weighs the communities instead.

Switching a toggle changes the picture at once: the whole graph of the namespace loads once, under your grant on it, and stays in your browser, so a toggle never fetches anything. While a big namespace arrives the graph and its counts fill in every second or so, and you can keep working with what is already there. A toggle never moves your view: your pan and zoom stay exactly where you left them.

As of is a day slider under the toggles. It runs from the earliest date your documents carry to today, with those dates shown under it; the right end is today, which means nothing dims. Drag it back to see the graph as it stood on that day.

Outside selection: Dim | Hide appears while a folder or a file is selected and decides what happens to everything outside it.

The graph is a force graph: every pair of nodes repels, every link pulls, and gravity keeps it together. It lays out in your browser and settles in front of you. A graph of a million nodes lays out gradually: the picture appears within seconds and keeps settling while the rest is placed, and nodes not yet placed are not drawn. The view opens fully zoomed out and follows the graph as it fills in, until you pan or zoom; after that it stays where you put it. Use pause and play on the graph bar to stop or resume the simulation. Controls on the graph bar tune the force graph live: orbit, repulsion, link pull per link class, gravity and flatness.

Everything is laid out in your browser from the namespace’s graph data, which Fontana streams to you once your grant on the namespace is confirmed: you only ever see, count and group namespaces you may read. While it opens you see Connecting, then Fetching nodes, then Building the graph; when the namespace changes, the canvas follows. The graph is built and laid out beside the page, so it stays usable while a big namespace arrives; when something goes wrong you get a message with Retry rather than a blank canvas. Nodes use the same kind glyphs as the rest of Flow: closed book for a namespace, folder for a folder, file-type badge for a file, a sky triangle for a page-index section, a small slate square for a chunk, plus entity, type and community stamps. Disabled namespaces, folders and files stay on the canvas at reduced opacity; entity stamps gray when no enabled chunk still mentions them. Hover shows the kind and name. Click a node to select it. The details card shows its type, name, and Connected to, with the connected nodes and their kind icons. Click a neighbour to select it; double-click a namespace, folder, file or section (in the graph or in Connected to) to open its page. Zoom in until labels appear; relationship names and similarity scores label their links. Overlapping stamps and edges get brighter in dark mode and darker in light mode, and you can pan until any node sits in the middle of the canvas.

In chat, the assistant calls Knowledge Graph search. Co-annotation is an extra lane on that API call: chunks that mention two entities named in the question. The span linker runs only with that lane, attaching an unnamed phrase to a nearby entity. Grounding roles (bridge, filter, ignore) come back on the search response. See Retrieval.

View Overlay Idiom What you see
Content Fontana Files Preview, Parsed, Source, Graph On a file, the tabs that apply appear in this order. Preview is the friendly view: a spreadsheet as one grid per sheet, a csv or tsv in the table explorer, a PDF in the browser viewer, rendered HTML, and an image or media file in place. A markdown file renders on Preview, including its frontmatter as a table. Parsed is the markdown Fontana made from a document such as a PDF or a Word file, one page at a time, and a continued table keeps its header. Source shows the raw file in an editor. Binary files leave Source out.
Graph data Extracted graph Preview, JSON-LD Preview lists every triple from that file in a grid: subject, predicate, and object. JSON-LD is the stored graph for the same file.
Status File queue Queue and edges Namespace and folder cards open Status. The queue lists each file’s path, its state and the step it is at. A failed file shows its error and a Retry action. A skipped file shows a light green badge and the reason, with no Retry. You can pause and resume processing, re-ingest every file, retry every failed step, show only failed files, and search by path. An Edges card shows how the graph was built. The processing graph stays in the card header.

Search and editor overlays stay query-scoped (a seed plus a bounded number of hops, top-K by degree or score). The Graph tab loads the namespace’s graph once, and Fontana never runs a graph query to show it: the graph comes from a cache of the namespace, streamed to you under your namespace grant, and your toggles choose what to draw from it.

Open Status for progress and failures. Open Config to set ingestion settings:

  • Namespace Config: ontology agent, parse and index, embeddings, entity recognition, ontology mining, evolution policy, and budget cap. Info icons explain each control. The ontology agent is chosen once per namespace, where a review is scoped; folders and files inherit that choice.
  • Folder Config: open the folder card and set parse and index and embeddings for that folder. Clear the override to inherit the namespace again.
  • Skipped files: a file PARSE has no parser for is skipped, not failed: images, fonts and other binary files, and operating-system metadata such as .DS_Store. The queue shows a light green skipped badge with the reason, the later steps leave the file out of their counts, and nothing needs fixing. Replacing the file with a parseable one processes it again. HTML pages are parsed: headings and text are kept, scripts and styles are dropped.
  • Failures: a failed file shows the step that failed and its error in the queue and on the file card. Retry failed on Status or the overflow menu runs those steps again; Re-ingest runs every step again for a file, folder or namespace. Pause processing holds every step for the namespace without losing anything; Resume continues where it stopped. Rebuild graph on the namespace menu replays the graph from the processed files without re-parsing or re-embedding them.
  • Graph presets: the glass bar at the bottom of Graphs picks a question rather than eight switches. Provenance is first and is selected when Graphs opens (which file a fact came from), then Structural (how the corpus is organised), Semantic (how entities relate to one another), Ontology (how entities roll up into types), and Vector (what is embedded and similar). Each control is an icon; the tooltip names the layer. Nodes opens the kind toggles, Namespace switch, and as-of day. Controls opens orbit and force sliders. Pause and play sit on the same bar. Changing a switch by hand leaves no preset highlighted. The selection and layer name sit in a glass caption at the top centre of the canvas. An info control in the top-right opens a details card; pin it to keep it open.
  • Graph layout: your browser lays the graph out as a force graph, which keeps moving until it settles: use pause and play on the graph bar to stop or resume it, and Controls on that bar for the forces.
  • Orbit: the Orbit slider under Controls sets how far the graph turns about its vertical axis as the pointer crosses the canvas, so a nearly flat layout shows its depth. Slide it to zero to switch orbiting off; pause holds the graph still.
  • Namespace and folder focus: the Namespace switch under Nodes shows everything in the namespace, with a coloured region drawn behind it. Select a folder or a file in the sidebar and the same switch greys everything outside the selection instead; switch it off to leave only the selection, the folders above it, its files and what they mention. Cmd-click a folder or a file (Ctrl-click on Windows and Linux) in the sidebar to add or remove it. The graph includes every selected folder and file, and each one keeps its own region.
  • Communities: switch on Communities with Entities to group entities that link to each other more than to the rest. They are computed in your browser from the entities of the namespace you opened, so the same graph always gives the same communities.
  • As of: drag the day slider under the toggles to see the graph as it stood then; it runs over the dates your documents carry, and its right end is today. Documents not yet in force, or already superseded by their effective window, dim together with their sections, chunks and the entities only they mention; undated documents stay. Hover a file or select it to see its date or its effective window.
  • Instant reopen: Fontana keeps the graph you load in your browser. When you come back, only what changed is fetched; a toggle draws from what is already there.

The processing graph sits in every card header. PARSE reads the file. EMBED and NER then run in parallel; RESOLVE follows NER. INDEX writes everything into the graph as soon as PARSE is done and again as each later step finishes, so a file is searchable before it is embedded. Ontology Agent follows INDEX as an optional step you start yourself. A step you have turned off keeps the gray chip, with a green border and a fast-forward mark, and a tooltip that says the step is skipped. Each step keeps its own record per file and runs again only when its input changed, which is what makes processing safe to restart at any point. EMBED writes a vector for each chunk. NER extracts entities and relations. RESOLVE types unknown entities, merges duplicates, and adds relations. Ontology Agent corrects those types.

On a namespace or folder, Status opens under that graph. The Edges card compares edges that came from parsing with edges that came from extraction. The headline is the share that came from parsing, next to the traversable total.

Namespace Config draws the same graph, with each step’s switch on its node.