Skip to main content

HNS

Puts a HNS package at the service of an AI Agent or a Supervisor:

  • it imports a file — attached to the chat by the user, or picked in an external folder (SharePoint, S3) — for example an Excel catalogue, into data shared by every user of the pipeline (typically a SQLite database);
  • it gives the agent the package's tools to query that data: typed functions (chiffrer_commande, comparer_fournisseurs…) that compute from the database, instead of letting the model "read" a spreadsheet.

This is the right approach whenever an answer depends on exact calculations over structured data: a price that depends on a date, a category, a number of people and availability cannot be found reliably by searching text.

Ports​

  • "Support documents" input (left) — connect it to the Support document node. This is what lets a file attached to the chat update the data. Without this link the node never imports anything: the tools read the data already stored.
  • "Error" output (right) — taken when the package's script fails (see When the script fails). Wire it to an Error message and then to the Error exit.
  • "MCP" output (top) — connect it to the "MCP" port of an AI Agent or a Supervisor. A node wired to the Supervisor gives its tools to every subagent.

The same Support document node can feed both the chat input and the HNS node.

Configuration​

  • Package — among those imported in Manager → Tools → HNS packages. The package must have been approved by an administrator; the node says so otherwise. Its latest imported version is the one that runs.
  • Tools — untick a tool to hide it from the agent.
  • Source file (external folder) — an external folder, then one of its files, among those the package accepts. It is read again at every launch of the pipeline and imported again if it changed (see File from an external folder). Check now runs that check right away, once the pipeline is saved.
  • Write rights — the teams and people allowed to replace the data by attaching a file to the chat. They are chosen among the teams the pipeline is assigned to. Another user's file is ignored, and the agent explains why.
  • Data — the version in use (date, source file, information returned by the import), the version history with Make current to roll back, the Import a file now button and the latest imports (successful, refused, failed). Save the pipeline before managing a new node's data.
  • Try a tool — calls a tool on the data in use, with JSON arguments.

What happens on each message​

  1. A new expected file is attached (right type, right name) by a writer: the package's import steps run in the sandbox, a new data version becomes the version in use for everyone, and the agent is told about the update.
  2. No new file: nothing runs. The agent uses the data in use — or, if no import has happened yet, the initial data shipped with the package.
  3. The same file (already imported, here or in another conversation) is never imported again. Going back to an older version is done only with Make current.
  4. The import fails (malformed file…): the job stops with the script's message (see below). The previous data stays in use, and the same file is not retried on every message.

The imported file is not passed to the agent as text: it is only used for the import.

:::note Test panel In the pipeline's test panel, an attached file is imported for the test only: the data is not saved. To update the real data from the editor, use Import a file now. :::

File from an external folder​

When the reference data already lives in a shared folder — a price grid kept up to date on SharePoint, for example — there is no need to attach it to the chat: pick it in the node's configuration. The folder must have been declared by an administrator in Administration → External connections → External folders (see SharePoint folder configuration).

At every launch of the pipeline — chat message, document analysed, extraction, including when the pipeline runs as a sub-pipeline — before anything else, the file is read again and its SHA-256 fingerprint compared with the one from the previous check:

  • unchanged: nothing runs, the data in use stays — including after a Make current or a newer file attached by a writer;
  • modified: the import steps run and a new data version comes into use for everyone; if its content is that of a version still kept, that version is simply put back into use;
  • the package was updated: the file is imported again with the new package version;
  • unreadable (folder unreachable, file moved or deleted): the pipeline goes on with the data in use, and the agent is told.

Write rights do not apply to this file: it was chosen by someone allowed to edit the pipeline, and it is updated by whoever may write in the folder. A writer can still attach a file to the chat: it replaces the data until the folder's file next changes.

An external folder used by an HNS node cannot be deleted.

:::tip Launching many documents When several documents are launched on the pipeline at the same time, a single import takes place: the other jobs wait for it to finish, then find the file unchanged. :::

When the script fails​

If an import step raises an error — the package developer writes, for the user, what is wrong ("no product in the grid", "Products sheet missing"…) — or cannot run (sandbox unavailable, timeout), the user's message is not processed: the job stops and shows the script's message.

  • "Error" output not wired: the job ends as "Failed" with the script's message.
  • "Error" output wired to an Error message and then to the Error exit: that node's message replaces the script's (left empty, the script's message is shown), and the job ends as "Rejected", not billed.

The previous data stays in use. The technical detail (error, script log) is in the job's trace. A failing external-folder file stops every launch with the same message until it is fixed in the folder — without running the script again; only a temporary sandbox outage is retried. Tools do not fail the job: a tool's error goes back to the agent, which explains it.

What the agent receives​

  • the package's tools, with their typed parameters;
  • the package's instructions (for example: "never give a price from memory");
  • the state of the data: version, import date, source file and useful information such as the date availability was last updated.

The test panel's node details show the import (file, version produced, error and script log on failure) and every tool call, labelled "Package".

note

Like an MCP connector, attaching an HNS node turns on the agent's tool loop: it makes additional calls to the model, visible in the trace and in AI costs.