{"slug": "introducing-tap-software-building-blocks-for-the-agentic-world", "title": "Introducing TAP: software building blocks for the agentic world", "summary": "Telara Labs has open sourced TAP (Trusted Agent Primitives), a framework that lets AI agents package repeatable procedures as reusable, inspectable code with declared inputs, outputs and tool requirements. A runnable TAP package consists of a primitive.yaml manifest and a Bash, Python, JavaScript or TypeScript entrypoint, invoked by the agent through tap_run, with execution sandboxed via WebAssembly interpreters and tool, file and network requests checked against package declarations. The company says Claude Code and Codex currently offer the best-supported connected-tool experience, while other clients range from experimental to preview.", "body_md": "We've open sourced TAP (Trusted Agent Primitives) at Telara so agents can build reusable internal tools for the work they do repeatedly. The packages are code that developers can write, inspect and maintain too.\n\nEmployees ask agents to investigate issues, prepare customer reviews and check releases across CRM, ticketing, source control and billing systems. Executives we've spoken with describe those requests recurring across their organizations. A different account or project often means different inputs to the same procedure.\n\nOnce an agent has worked out a procedure, it should be able to put the repeatable parts in code and use them again. The agent can spend its reasoning on the decisions the task needs.\n\nA release-readiness primitive could take a repository, a candidate commit and release requirements. It collects changes since the last release, follows references to work items, retrieves CI results and checks required reviews. Its code handles pagination and matches records to the right commits and issues.\n\nThe output is the checks that passed, anything missing, and links to the evidence. The next release supplies new inputs. The agent uses the report to decide what needs attention.\n\nThis is an example of a primitive you could write. Its interface would need to make the inputs and the returned evidence clear:\n\n| Input | What the procedure returns | \n|---|---|\n| Repository and candidate commit | Changes and work items associated with that candidate | \n| Required checks and reviews | Passed checks, missing checks and evidence links | \n| Previous release | The range used to collect changes | \n\nThe same release requirements can apply to the next candidate. A smaller block that resolves changes to work items could also be useful in an incident investigation. That's the engineering idea behind primitives: build something useful once, give it a clear interface, and make it available to other people and their agents.\n\nA runnable TAP package has a `primitive.yaml` and a source entrypoint: Bash, Python, JavaScript or TypeScript. The manifest declares what the program needs. The agent loads the primitive's interface and invokes it through `tap_run`; the code returns its result or a failure the agent can act on.\n\nPackages use the host's existing tool connections. They don't contain the credentials for those tools, and declaring a requirement doesn't grant permission.\n\nTAP Runtime runs supported entrypoints through WebAssembly interpreters. Tool, command, file and network requests go through the runner and are checked against package declarations. Changes need approval through supported client paths; command-line changes are refused by default unless explicitly authorized.\n\nClaude Code and Codex provide the best-supported connected-tool experience today. Registration and execution are different capabilities; other clients range from experimental to preview, as the [compatibility table](https://github.com/Telara-Labs/TAP-Runtime#where-it-runs) shows.\n\nFor a concrete look at the runtime interface, the repository's [fan-out example](https://github.com/Telara-Labs/TAP-Runtime/tree/v0.1.20/examples/fan-out) uses a connected mail-search tool, sends four searches together with `tap.call_many`, and reports first-page counts for each time window. Its manifest declares the tools it may call and marks them read-only. It's deliberately small; the larger release-review procedure above is something you could build from reusable parts.\n\nThe code can keep intermediate records between calls, use one response to choose the next request, and handle ordinary branches. The agent receives the assembled result. A primitive's design can also include a specific reasoning decision with defined inputs and outputs; the repeatable execution around it stays in code.\n\n```\nnpm install -g @telaralabs/tap\ntap setup\ntap discover\n```\n\n`tap discover` reads supported agent histories on your machine and proposes primitives from repeated work. It sends no history off the machine. Review the code, its assumptions and failure cases before using a proposal.\n\nStart with the [installation guide](https://github.com/Telara-Labs/TAP-Runtime#install), [authoring guide](https://github.com/Telara-Labs/TAP-Runtime/blob/main/docs/writing-a-primitive.md) and [bundled examples](https://github.com/Telara-Labs/TAP-Runtime/tree/main/examples). The runtime is MIT licensed and works without a Telara account, service or registry.\n\nAt [Telara](https://telara.dev/), we're also working on how these tools become useful across a company. Telara is the enterprise AI operating layer: it connects AI clients to entitled company context and applies identity, scope and policy to the work it mediates. We're extending it with verification, versioning, admin approval and distribution for primitives. A colleague's agent should be able to reuse useful code under that colleague's company permissions.\n\nI'd like feedback on which procedures you'd package, what the inputs and outputs should be, and what makes a tool worth sharing with another person's agent.\n\n*I work on TAP at Telara. This post was drafted with AI assistance.*", "url": "https://wpnews.pro/news/introducing-tap-software-building-blocks-for-the-agentic-world", "canonical_source": "https://dev.to/luismalcaraz/introducing-tap-software-building-blocks-for-the-agentic-world-315h", "published_at": "2026-10-06 22:31:55+00:00", "updated_at": "2026-10-06 22:47:39.664400+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "agent-protocols"], "entities": ["Telara Labs", "TAP", "Trusted Agent Primitives", "TAP Runtime", "Claude Code", "Codex", "WebAssembly"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/introducing-tap-software-building-blocks-for-the-agentic-world", "markdown": "https://wpnews.pro/news/introducing-tap-software-building-blocks-for-the-agentic-world.md", "text": "https://wpnews.pro/news/introducing-tap-software-building-blocks-for-the-agentic-world.txt", "jsonld": "https://wpnews.pro/news/introducing-tap-software-building-blocks-for-the-agentic-world.jsonld"}}