Typed, unit-aware, bounded
Declare what a tool touches, its units, its limits from the approved design space and the autonomy level it needs.
The Pildeon SDK is typed Python. Tools carry units and the approved design space; agents carry goals, autonomy levels and audit settings; the policy engine enforces all of it at call time. Every change is versioned and change-controlled.
Scenario: Run one immediate-release tablet batch through granulation, compression, coating and inspection inside the approved design space, with QA approval before release. A design walkthrough, not a customer record.
The Pildeon SDK is typed Python. Tools are declared with schemas, units and design-space limits; the policy engine enforces them at call time, and every change to a tool or a limit is a change-control event.
# Bound the compression agent to tablet press 2's approved design space.
from pildeon import Agent, Tool, DesignSpace, Autonomy
force = Tool(
name="press.write_setpoint",
tags=["TP2.MAIN_FORCE", "TP2.FEED_FRAME_SPEED"],
limits=DesignSpace.approved("family-A", "tooling-D"),
)
compress = Agent(
id="agent.compress_fill",
goal="weight, hardness on target; capping risk under threshold",
tools=[force, Tool("press.read_force_curve", read_only=True)],
# supervised: each move executes on approval
autonomy=Autonomy.L2,
# rehearse on the twin before every proposal
verify="twin",
# every call lands in the Part 11 audit trail
audit="part11",
)
run = compress.start(line="L2", batch="B-240918")
for step in run.stream():
print(step.name, step.status, step.duration)
The same run engine, the same policy checks, the same audit trail, from the terminal, the review console or the SDK.
$ pildeon run "batch B-240918 on L2" --autonomy L2
→ plan composed 10 steps · 1 QA approval gate
→ twin.simulate 36 candidates · best #14 · capping risk under threshold
→ policy.evaluate 5 moves inside design space · release held for QA
→ executing blend.uniformity .... ok 6m10s
→ executing granulate.dry ...... ok 3m48s
→ executing compress.press ..... ok 2m02s
→ executing coat.spray ......... ok 4m25s
! approval required batch_release · QA reviewer
→ approved named QA reviewer · identity + timestamp logged
→ run complete genealogy written · release package cited
$ pildeon runs show run_b2c7e1 --format genealogy
Enough to define, bound, rehearse and audit an agent; not enough to bypass the policy engine.
Declare what a tool touches, its units, its limits from the approved design space and the autonomy level it needs.
Compose an agent from a goal, a tool set, an autonomy level, a twin verification step and an audit setting.
Run a candidate setpoint vector against the fitted twin before it is shipped; log the prediction with the run.
Replay any historical batch against a new model version and diff the recommendations, as evidence for change control.
Autonomy policy, allow-lists and limits live in version control and promote through the same change-control gate as models.
Query the Part 11 audit trail by batch, agent, tool, reviewer or time; export in the formats QA and auditors ask for.
REST and server-sent events. Every endpoint is tenant-scoped and every mutation is audited.
| Endpoint | Purpose | Returns |
|---|---|---|
| POST /runs | Start a run from a goal and a batch record | Run id, plan, approval gates |
| GET /runs/{id} | Read a run record | Steps, statuses, durations, agents, tools |
| GET /runs/{id}/stream | Stream tool calls as they happen | Server-sent events, in order |
| GET /runs/{id}/genealogy | Read the batch genealogy | Time-aligned states, actions, approvals, QC results |
| POST /approvals/{id} | Record a reviewer decision | Identity, decision, timestamp, signature |
| GET /models | List models and versions | Model cards, validation status, pinned sites |
| POST /twin/simulate | Rehearse candidates on a fitted twin | Ranked candidates with predicted attributes |
A run record is exactly this: ordered steps, each with agent, tool, duration, status and detail, plus the approval gate and the genealogy pointer.
Plant Orchestrator · Pulled the master batch record, the approved design-space limits for this formulation and tooling family, and the site autonomy policy from MES; locked the target envelope for the run.
Plant Orchestrator · Twindra simulated 36 candidate setpoint vectors on the as-made batch twin (granulation DEM, compression and ejection risk, coating CFD, dissolution surrogate) and ranked them on predicted content uniformity, capping risk and takt.
Blend-and-Dispense · Spectryn scored in-line NIR spectra against the formulation's chemometric model; the blend reached its uniformity end point with confidence bounds inside the site acceptance limit and blending stopped on evidence rather than on a fixed time.
Granulate-and-Dry · Inlet air temperature and drying airflow trimmed inside the approved window to bring loss-on-drying to the target moisture band for compression; the move was bounded, logged and inside the design space.
Compress-and-Fill · Main compression force and feed-frame speed adjusted inside the approved window to hold tablet weight and hardness on target while the twin's capping-risk estimate stayed under the site threshold.
Coat-and-Dry · Spray rate and inlet temperature re-phased against bed temperature and exhaust humidity to hold the film-coat window and avoid twinning and mottling; no excursion from the validated recipe envelope.
Defect-and-Inspect · Visqa classified chips, cracks, capping, spots, mottling and print defects on six synchronised cameras, within the sub-100 ms design budget, and linked a rising chip rate to coating spray rather than to tooling.
Quality-and-Potency · Spectryn assembled the method-linked evidence chain for content uniformity and moisture with confidence bounds and citations to the validated analytical method, ready for QA review.
Plant Orchestrator · Batch release is above every autonomy level Pildeon offers. The package was held for the named QA reviewer, who approved it in the review console; the decision, the reviewer identity and the timestamp are in the Part 11 audit trail.
Quality-and-Conformance · Conforma wrote the time-aligned batch genealogy (every sensor state, recommendation, approved action, equipment response and QC result) and the cited release package to the immutable audit trail.
Every tool invocation, argument and result is written to an immutable, human-readable log, and every reasoning step is expandable. Nothing about a run is hidden from the plant or from QA.
Plan, thought, action, observation, exactly as the orchestrator records it.
Run one immediate-release tablet batch through granulation, compression, coating and inspection inside the approved design space, with QA approval before release.
Rehearse on the twin first. Stop blending on NIR evidence rather than on a fixed time. Trim drying, compression and coating only inside the approved design space. Inspect continuously. Hold release for the named QA reviewer, always.
The fixed recipe blends for a set time regardless of what the spectra say. On the twin, the candidate that stops on evidence and trims inlet temperature before compression keeps content uniformity and moisture inside their limits with the lowest predicted capping risk.
twin.simulate(candidates=36) → candidate #14: evidence-based blend end point, bounded drying trim, compression force held inside the window, spray rate re-phased to bed temperature.
Every candidate that pushed turret speed for takt raised predicted capping risk above the site threshold and was discarded. Rate is never traded for a quality attribute.
Execute candidate #14 under autonomy level L2: five setpoint moves inside the design space, each logged. Batch release routed to QA.
Chip rate rose on camera 4 at 06:27:10. Visqa attributed it to coating spray rather than tooling; a bounded spray-rate trim returned it to baseline in about two minutes.
Scenario complete. Every move inside the approved design space, the QA approval recorded with identity and timestamp, and the cited release package written by Conforma to the immutable audit trail.
Development in a regulated plant has a shape, and the SDK follows it.
A tablet plant does not go from fixed recipes to autonomy in one step, and validated parameters never change without sign-off. Pildeon makes the level explicit, auditable and reversible at any time.
| Level | What the agent does | What the human does | Typical time to reach |
|---|---|---|---|
| L0 · Shadow | Observes, scores and predicts; writes nothing | Runs the line as today; compares predictions to QC results | Weeks 1 to 6 of a design partnership |
| L1 · Assist | Recommends setpoint moves and explains why | Process engineer enters the move; QA reviews the log | After shadow-mode accuracy is shown |
| L2 · Supervised | Proposes a bounded move; it executes on approval | Approves each move in the review console | After assist-mode ROI is shown |
| L3 · Bounded | Moves low-risk compression, coating and inspection setpoints inside the approved design space | Handles exceptions; approves every release | After validation and change-control review |
There is no unattended level. Batch release and any move outside the approved design space always wait for a named QA reviewer, and every model or prompt change runs under GxP change control.
Two agents will want the same setpoint. The orchestrator arbitrates on the run goal and the quality attributes, not on who asked first, and the handoff is logged like any other step.
Yield-and-Takt wants more turret speed to recover takt lost to an upstream changeover.
Quality-and-Potency wants turret speed held: the twin's content-uniformity and capping-risk estimates rise with dwell time lost.
A quality attribute outranks takt under every Pildeon run goal. Quality-and-Potency wins the setpoint; the takt request is declined and the reason recorded.
Yield-and-Takt recovers the schedule by re-sequencing the next changeover with cuOpt instead of pushing the press.
Pildeon reads and writes through the systems already on the floor: presses, coaters, granulators, PAT probes, MES, LIMS and historians. No rip-and-replace, no parallel historian. Connectors are built with design partners against their stacks; the vendors listed are the ones common in OSD plants.
GEA, Glatt, Syntegon, Freund-Vector, L.B. Bohle
Blender, granulator and fluid-bed telemetry; bounded setpoint writes
Fette Compacting, Korsch, IMA, Syntegon, MG2
Force curves, fill depth, ejection force; bounded setpoint writes
GEA, Glatt, O'Hara, Thomas, Freund
Spray, inlet, bed temperature, exhaust humidity; bounded writes
Bruker, Sartorius, Viavi probes and analysers
Spectra across blend, granulation, drying and compression
Line cameras and existing inspection systems
Frames, defect maps, reviewed images
Körber Werum PAS-X, Rockwell, Siemens Opcenter
Master batch records, campaigns, batch genealogy
Site LIMS, OSIsoft PI and equivalent historians
QC results, time-series backfill and replay
Azure AD, Okta, LDAP · NVIDIA Jetson and on-prem GPU
SSO, RBAC, named approvers · inference at the line
Pildeon writes to production equipment in a GMP plant. Every capability is scoped to the approved design space, every write is policy-checked, every action is written to an immutable Part 11 audit trail the site owns, and no agent can release a batch.
| Standard | Scope | Status |
|---|---|---|
| 21 CFR Part 11 | Audit trail, e-signatures, records | RUNNING Designed in from day one |
| GAMP 5 | Validation package for the platform | RUNNING In progress, planned for the first design partners |
| cGMP · ICH Q8 to Q13 | Design space, QbD, continuous manufacturing | RUNNING Design-aligned; site validation decides |
| SOC 2 Type I | Cloud control plane | QUEUED Planned, first six months |
| SOC 2 Type II | Cloud control plane | QUEUED Planned, months six to twelve |
| Data residency | Validated on-prem, air-gapped option | SUCCEEDED Available by design |
The questions site directors, MSAT engineers and QA leads actually ask in the first meeting.
Yes, but only inside an explicit setpoint allow-list bounded by the design space your validation approved, and only at the autonomy level your site has set. Level 0 is shadow mode: Pildeon observes and predicts and writes nothing. Most sites spend their first weeks there.
No. The approved design space is a wall the policy engine enforces at call time. A move outside it, or a change to a validated parameter, is a change-control event that waits for QA sign-off. No autonomy level removes that gate.
A named QA reviewer, every time. Pildeon assembles the evidence chain and the cited release package; the reviewer approves or rejects it in the review console, and the decision, identity and timestamp land in the Part 11 audit trail.
The line returns to the equipment's own last known-good recipe. Pildeon is a supervisory layer on top of your existing control systems, never a replacement, so an outage degrades the line to the way it runs today, not to a stop.
Only if you choose cloud training. Formulations, recipes, spectra and defect libraries are tenant-isolated and never used to train another customer's models. Validated on-prem deployment with an air-gapped plant edge is available.
Shadow mode on one wedge workflow first, with baseline rejects, deviations, yield, energy and release time captured before any autonomous action. Assist mode once prediction accuracy is shown against QC results. A paid validated pilot only when there is a written ROI target. Timelines depend on the site's validation and change-control calendar.
SDK access comes with the design partnership. Tell us the line and the workflow and we will set up the harness.
↑↓ navigate↵ openesc close