tpmjs AGENTS.md

Instructions for TPMJS, a Turborepo monorepo—a repository containing multiple related packages—used to discover and register AI tools.

In plain words
What is it for?
Use them to develop, build, test, lint, format, or type-check the TPMJS web app and its packages.
Why use it?
They provide the required package-manager and build commands and clarify how the web app, component library, database, and registry fit together.

Instructions file for CodexOpenCode

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/tpmjs/tpmjs/agents-md
Clone the repo
git clone --depth 1 https://github.com/tpmjs/tpmjs

Made for: Codex, OpenCode.

Per session 1,778 This file is loaded in full into every session.
When invoked 1,778 The same file — it is already loaded in full.
Security scan B 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.01778 $0.01778
Opus 5 $0.00889 $0.00889
Sonnet 5 $0.00356 $0.00356
Haiku 4.5 $0.00178 $0.00178

Measured 2d ago against content hash 5aed05e0d1d8, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade B, and why

tpmjs AGENTS.md scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Asks for rootmediumPrivilege escalation

A mod that escalates privileges can change anything on the machine, not only the project.

- Debug production with `sudo podman logs <tpmjs-web|tpmjs-playground|...>` and `journalctl -u <unit>`; check `https://tpmjs.com/api/health` to verify the app is up
AGENTS.md · 214 lines

How it starts

The opening of the file, as written. The whole thing — 214 lines — stays where its author put it; the contents beside it link to each section on GitHub.

TPMJS OpenCode Configuration

This file contains project-specific rules and guidance for OpenCode agents working in the TPMJS monorepo.

Repository Overview

TPMJS is a Turborepo monorepo for AI tool discovery and registry. Key characteristics:

  • Package Manager: pnpm with workspace configuration
  • Build System: Turborepo for task orchestration
  • Main App: Next.js 16 App Router (apps/web)
  • Component Library: .ts-only React components (packages/ui)
  • Database: Prisma with PostgreSQL (packages/db)
  • Tool Registry: npm package discovery and metadata sync

Core Commands (Always Use These)

# Development
pnpm dev                    # Start all dev servers
pnpm --filter=@tpmjs/web dev  # Start web app only

# Building (Respects Dependencies)
pnpm build                  # Build all packages
pnpm --filter=@tpmjs/ui build  # Build specific package
pnpm --filter=@tpmjs/web... build  # Build web + all dependencies

# Testing & Quality
pnpm test                   # Run all tests
pnpm lint                   # Lint all packages
pnpm format                 # Format with Biome
pnpm type-check             # TypeScript checking

Architecture Rules (Critical)

Module Boundaries

  • Apps (apps/*) can only import from published packages (@tpmjs/*)
  • Packages (packages/*) cannot import from apps
  • UI Package (packages/ui) cannot import from utils (stays dependency-free)
  • No barrel exports - always import directly: @tpmjs/ui/Button/Button

Component Usage

ALWAYS use @tpmjs/ui components instead of raw HTML:

// Good
import { Button } from '@tpmjs/ui/Button/Button';
import { Input } from '@tpmjs/ui/Input/Input';

// Bad
<button onClick={handleClick}>Submit</button>
<input value={value} onChange={onChange} />

TypeScript Configuration

  • All packages extend from @tpmjs/tsconfig
  • Strict mode enabled
  • Composite projects for proper dependency resolution

Package Structure

Read the full file on GitHub · 214 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 214 lines · 1,778 tokens per session scan B 5aed05e0d1d8

Subscribe to this mod's changes

tpmjs AGENTS.md is an instructions file published in the GitHub repository tpmjs/tpmjs (24 stars, last pushed 8d ago), licensed MIT. It adds 1,778 tokens to every session, about $0.0089 per session on Opus 5. A static security scan graded it B with 1 finding (asks for root). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.