Agentyx

The Agentyx code-privacy standard

Your source code never leaves your building. We modernize it anyway.

You redact your code on your own machines with an open-source tool, keep the keys, and upload only neutral tokens. Agentyx converts, tests and documents code it cannot read — and you restore the results locally. Not a promise about our security: a workflow where there is nothing to secure.

This is not an optional add-on. Redaction is how Agentyx works by default, on every engagement — the standard, unless you choose otherwise.

Why this is possible

Conversion reads your code's structure — never its meaning.

What makes your code proprietary is its meaning: the names that spell out your business, the values, the comments. What conversion, compilation and testing consume is its structure: the control flow, the record layouts, the types. Those are different layers — so the meaning can be stripped before anything is uploaded, and the work proceeds on structure alone, unchanged.

The thing you hide is exactly the thing the work never needed.

What actually crosses the wire

Your code — stays with you

01  WS-FEE-RATE  PIC 9(2)V99
      VALUE 2.50.
IF WS-CUSTOMER-NAME
      = 'ACME HOLDINGS'
   DISPLAY 'VIP CLIENT: '
      WS-CUSTOMER-NAME

What Agentyx receives

01  DN_1  PIC 9(2)V99
      VALUE NUM_1.
IF DN_2
      = STR_1
   DISPLAY STR_2
      DN_2

The structure a converter needs — levels, PIC clauses, the IF — is intact. Who you charge, what you call things, and what the rate is are gone.

The workflow — deliberately in your hands

The redaction step is intentionally separate from our website. You run it yourself, offline if you like, and verify it yourself — before we ever see a byte.

1Download the redaction toolYou — on your machines

Get the open-source tool for your language from our public GitHub repository. It is a single Python file with no dependencies and no network code — small enough for your security team to read line by line before anyone runs it.

COBOL and Zig today; more languages on request.

2Redact on your machine — offlineYou — on your machines

Run the tool inside your own environment, disconnected if you wish. Every name, string, value and comment in your code is replaced by a neutral token (ID_1, STR_2, CMT_3 …). The token-to-original map is written to a keys file that stays with you. This step is deliberately separate from our website: we are not in the room when it happens.

python3 agentyx_redact_cobol.py redact --in ./src --out ./redacted --keys ./agentyx.keys.json
3Verify, then upload only the redacted codeYou — on your machines

The tool proves to you, locally, that the redacted files restore to your original byte for byte, and scans its own output to confirm no redacted name or literal survived. Only then do you upload the redacted files. The keys file never leaves your machine — we never ask for it, and nothing we ship can read it.

python3 agentyx_redact_cobol.py verify --original ./src --redacted ./redacted --keys ./agentyx.keys.json
4We modernize code we cannot readAgentyx

Agentyx converts, compiles, type-checks, tests and documents the redacted code. Conversion consumes only the structure of a program — control flow, record layouts, types — and that is exactly what redaction preserves. The results come back to you still in tokens, with evidence of what was verified.

Your proprietary vocabulary never appears in our systems at any point.

5Restore the results locally with your keysYou — on your machines

One command rehydrates the returned artifacts on your machine, turning every token back into your real names, values and comments. The finished, readable deliverable exists only inside your boundary.

python3 agentyx_redact_cobol.py rehydrate --in ./results --out ./final --keys ./agentyx.keys.json

What we see. What we never see.

Visible to Agentyx

  • Control flow and program structure
  • Record layouts, PIC clauses, type shapes
  • Language keywords and standard-library calls
  • Neutral tokens: ID_1, STR_2, CMT_3 …

Never leaves your boundary

  • Your names — fields, paragraphs, functions, files
  • Your string literals and business values
  • Your comments — every word of them
  • Your keys file (it never leaves your machine)

One honest caveat, stated up front: the shape of your program stays visible — that is what conversion works on. If the algorithm's shape is itself the secret, talk to us before an engagement.

Don't trust us — audit it

The tool is open source, one file, and proves itself to you.

Readable in an afternoon

One self-contained Python file per language. Standard library only — there is no dependency tree to vet.

No network code, ever

The tool cannot upload anything. Run it air-gapped; it behaves identically.

Self-verifying

Every run restores its own output in memory, confirms it matches your original byte for byte, and scans for anything that leaked.

Everything structural ships this way

Redaction is not a feature of one service — it is how every structural service is delivered.

Code conversion & modernization

Legacy programs translated to modern languages and frameworks, on redacted source, with the result verified before you restore it.

Test generation

Unit and golden-master tests grounded in the behavior of your original program — generated and run without your real names.

Documentation

API and structure documentation derived from the code itself; it rehydrates into your vocabulary on your side.

Verification & equivalence evidence

Old and new behavior compared on the same inputs, with auditable evidence — the verdict transfers to your real code.

Static analysis & code health

Dead code, complexity and structure analysis never needed your names in the first place.

The meaning layer stays yours

Choosing good names, domain types and business-rule judgments needs meaning — so that slice of the work happens on your side, after rehydration. We say so up front.

Questions security teams ask

What if I lose the keys file?

Redaction is deterministic: re-running the same tool version on the unchanged original source regenerates the identical keys file, which restores any previously returned results. If the source has changed since, the old results can't be restored — so the right habit is still to keep the keys file under your normal version control, next to your code.

Which languages are supported?

COBOL and Zig today, each with its own dedicated, separately auditable tool. We add languages on request — the approach carries over directly.

How do I know the tool doesn't phone home?

Read it — each tool is one Python file using only the standard library. A grep for socket/urllib/http across the repository matches only the Apache license URL in the file headers. Run it on an air-gapped machine if you prefer; it works identically.

What does redaction NOT hide?

The shape of your program — control flow, layouts, call graph — stays visible, because that is what conversion works on. If the secret is the algorithm's shape itself rather than its names and values, tell us and we'll scope additional measures.

Can the converted system really be correct if you never saw the real code?

Yes — and we prove it rather than ask you to believe it. Conversion depends on structure, not on what things are called. Verification runs old and new behavior on the same inputs and shows you the evidence, and anything that genuinely requires domain meaning (like choosing good names for new constructs) happens on your side, after you restore the results.

Start without showing us anything

Download the tool, redact a program, and look at what would cross the wire — before you talk to anyone. When you're ready, we'll modernize code we cannot read, and prove it.