CodableAIA Stacksona Company

Public deterministic execution toolkit

Deterministic tools for AI agents

Run calculations, transform data, process text, analyze images, and execute workflows using stateless tools designed for reliable chaining.

CodableAI is offered by Stacksona as a way to make AI agent outputs more deterministic and transparent in processing.

65tools
17categories
128max chain links
Typedchain-safe interfaces

Deterministic execution

The same input produces the same output. No randomness. No hidden state.

Typed interfaces

Every tool publishes typed inputs and outputs so agents can validate compatibility before execution.

Chain-ready workflows

Chain tools together, branch with switch routing, inspect structured execution traces, or build workflows visually in Chain Studio.

Arrays deterministic typed

Array Filter

Filters arrays using deterministic comparison operators and optional value normalization.

Inputs: items:array, field:text, operator:text, value:integer

Arrays deterministic typed

Array Map Fields

Transforms selected object fields using deterministic operations such as trim, lowercase, uppercase, number, and date normalization.

Inputs: items:array, mappings:array

Arrays deterministic typed

Array Sort

Sorts arrays of primitives or objects by one or more keys deterministically.

Inputs: items:array, key:text, direction:text

Arrays deterministic typed

Array Unique

Deduplicates arrays of primitives or objects by a selected key or full canonical value.

Inputs: items:array, key:text

Business deterministic typed

Company Name Resolver

Canonicalizes company names by stripping legal suffixes and punctuation.

Inputs: name:text

Business deterministic typed

Date Normalizer

Normalizes common date formats into ISO 8601 dates.

Inputs: value:text

Calculators deterministic typed

Arithmetic Calculator

Evaluates arithmetic expressions and returns full intermediate work.

Inputs: expression:text

Calculators deterministic typed

Expression Evaluator

Safely evaluates expressions with math functions and shows the work.

Inputs: expression:text

Calculators deterministic typed

Financial Formula Calculator

Evaluates common financial formulas with full substitution steps.

Inputs: mode:text, principal:integer, rate:number, periods:integer

Calculators deterministic typed

Matrix Calculator

Performs matrix operations and shows row by row work.

Inputs: mode:text, a:array, b:array

Calculators deterministic typed

Statistics Calculator

Computes descriptive statistics and shows formulas and substitutions.

Inputs: values:array

Calculators deterministic typed

Unit Conversion Engine

Converts units and shows formulas and factor substitutions.

Inputs: value:integer, from:text, to:text

Data deterministic typed

Data Deduplicator

Deduplicates records by canonical key or selected fields.

Inputs: records:array, keys:array

Documents deterministic typed

Document Chunker

Splits text into deterministic overlapping chunks.

Inputs: text:text, chunk_size:integer, overlap:integer

Documents deterministic typed

HTML to Structured Content

Turns HTML into headings, paragraphs, tables, and links using deterministic parsing rules.

Inputs: html:text

Documents deterministic typed

PDF Text Extractor

Extracts visible text from text based PDF content passed inline as text or base64 in a stateless JSON request.

Inputs: pdf_base64:base64_or_text

Documents deterministic typed

Table Extractor

Extracts tabular rows from HTML tables, CSV, TSV, or pipe tables passed inline in JSON.

Inputs: csv:text

Format deterministic typed

Format HTML to Markdown

Converts common HTML structures into deterministic markdown while preserving links and headings.

Inputs: html:text

Format deterministic typed

Format Markdown to HTML

Converts safe markdown features into deterministic HTML without external libraries.

Inputs: markdown:text

Governance deterministic typed

Evidence Package Generator

Creates a deterministic evidence package from a tool invocation.

Inputs: tool_id:text, input:object, output:object, timestamp:text

Image deterministic typed

Image Base64 Info

Reads a base64 image string, reports MIME type, payload size, and byte estimate without decoding pixels.

Inputs: base64:base64

Image deterministic typed

Image Bounding Box

Adds up to 10 labeled and colored bounding boxes to a base64 portable anymap image using exact coordinates and returns the annotated image.

Inputs: base64:base64_image, boxes:list, stroke_width:integer

Image deterministic typed

Image PNM Crop

Crops a base64 portable anymap image using exact x, y, width, and height values and returns a new base64 image.

Inputs: base64:base64, x:integer, y:integer, width:integer

Image deterministic typed

Image PNM Info

Parses a base64 portable anymap image in P2 or P3 form and returns exact dimensions, channels, and max value.

Inputs: base64:base64

Image deterministic typed

Image PNM Invert

Inverts every channel in a base64 portable anymap image against the declared max value.

Inputs: base64:base64

Image deterministic typed

Image PNM Threshold

Applies deterministic binary thresholding to a base64 portable anymap image and returns a base64 P2 output.

Inputs: base64:base64, threshold:integer

Image deterministic typed

Image PNM to Grayscale

Converts a base64 portable anymap image from exact P3 RGB values into deterministic P2 grayscale output.

Inputs: base64:base64

JSON deterministic typed

JSON Flatten

Flattens nested objects and arrays into deterministic dotted path keys.

Inputs: data:object

JSON deterministic typed

JSON Merge

Merges two JSON objects using deterministic shallow or deep merge rules.

Inputs: left:object, right:object, mode:text

JSON deterministic typed

JSON Path

Reads values using deterministic dotted and bracketed path expressions.

Inputs: data:object, path:text

JSON deterministic typed

JSON Pick

Selects only named fields or paths from an object or array of objects.

Inputs: data:object, fields:array

JSON deterministic typed

JSON Repair

Repairs common malformed JSON such as trailing commas and smart quotes.

Inputs: text:text

JSON deterministic typed

JSON Unflatten

Rebuilds nested JSON objects from dotted and bracketed path keys.

Inputs: flat:object

Math deterministic typed

Math Advanced Statistics

Computes quartiles, percentiles, z-scores, and variance metrics deterministically.

Inputs: values:array, value:integer

Math deterministic typed

Math Compound Interest

Computes future value, contribution growth, and CAGR using deterministic formulas with visible work.

Inputs: principal:integer, rate:number, periods:integer, contribution:integer

Math deterministic typed

Math Date Diff

Computes days, weeks, months, years, and business days between two ISO dates.

Inputs: start_date:text, end_date:text

Math deterministic typed

Math Loan Payment

Computes periodic payment, total payment, total interest, and amortization preview with formula steps.

Inputs: principal:integer, annual_rate:number, periods:integer

Math deterministic typed

Math Percent

Computes percentage of, percent change, margin, and markup with visible work steps.

Inputs: mode:text, base:integer, value:integer

Math deterministic typed

Math Sequence

Computes sum, average, min, max, median, range, and cumulative totals for numeric arrays.

Inputs: values:array

Parsing deterministic typed

Regex Extraction Engine

Runs deterministic regular expression extraction with optional capture groups.

Inputs: text:text, pattern:text

Retrieval deterministic typed

URL Content Fetcher

Fetches a URL and returns HTML, stripped text, headers, and status without storing request state.

Inputs: url:url, max_chars:integer

Retrieval deterministic typed

URL Metadata Fetcher

Fetches a page and extracts title, description, og tags, and canonical URL in a stateless request.

Inputs: url:url

Retrieval deterministic typed

Web Search Tool

Deterministically ranks a provided corpus or fetched page set for a query. For production, plug in your search adapter.

Inputs: query:text, documents:array

Text deterministic typed

Text Diff

Computes deterministic line and word diffs with additions, removals, and similarity.

Inputs: left:text, right:text

Text deterministic typed

Text Normalize Whitespace

Normalizes whitespace, line endings, tabs, and invisible spacing characters.

Inputs: text:text, collapse_blank_lines:boolean

Text deterministic typed

Text Similarity

Computes deterministic Jaccard, overlap, and cosine-like frequency similarity for two texts.

Inputs: left:text, right:text

Text deterministic typed

Text Token Count

Counts characters, words, lines, bytes, and estimated tokens for common model families.

Inputs: text:text

Text deterministic typed

Text Truncate

Deterministically truncates text by characters, words, lines, or sentences.

Inputs: text:text, mode:text, limit:integer

Text deterministic typed

Text Word Frequency

Returns normalized word frequencies with deterministic stopword removal and sorting.

Inputs: text:text, top_n:integer

Utilities deterministic typed

File Type Detector

Detects file type from filename, mime hints, or magic bytes.

Inputs: filename:text

Validation deterministic typed

Checklist Validator

Checks whether required items are satisfied by provided items.

Inputs: required:array, provided:array

Validation deterministic typed

JSON Schema Validator

Validates data against a practical subset of JSON Schema.

Inputs: schema:object, data:object

Web deterministic typed

Web Domain Parse

Parses a URL into protocol, hostname, subdomain, root domain, path, query, and fragment.

Inputs: url:url

Web deterministic typed

Web Link Extract

Extracts links, anchor text, rel values, and internal or external classification from HTML.

Inputs: html:text, base_url:url

Web deterministic typed

Web Query Params

Reads, adds, removes, sorts, and normalizes URL query parameters deterministically.

Inputs: url:url, mode:text

Web deterministic typed

Web Robots Parse

Parses robots.txt into structured user-agent allow, disallow, sitemap, and crawl-delay rules.

Inputs: text:text

Web deterministic typed

Web Sitemap Parse

Parses sitemap XML into URL entries with lastmod, priority, and changefreq fields.

Inputs: xml:text

Workflow deterministic typed

Workflow Switch

Compares one value to another and selects the next chain link based on deterministic branch rules.

Inputs: left:any, operator:text, right:any, value:any