Concepts

HarnessTap concepts

Resources, context, environment, layers, and decks — from atomic building blocks to your personal collection, step by step.

The atomic building block.

Resource

Every file or setting HarnessTap manages is a resource—the smallest unit you can combine, reuse, and swap.

What

Context-side

instructions, skills, rules, MCP server definitions, hooks, agents, commands

How

Environment-side

env vars, model config, permissions

Plugin pins are composition refs that pull in more resources from marketplaces—without duplicating files by hand.

MCP server definitions describe what to connect to; tokens and URLs are supplied as environment values.

Rectangular boxes list context-side resource types in an upper block and environment-side resource types in a lower block.

What the agent knows and can do.

Context

Context is everything that shapes what the agent sees before it acts.

Think of it like a focused briefing: you hand over the skills, rules, and MCP servers for this job—not your whole toolbox.

Context-side resources define what gets loaded into the agent's working set—the knowledge and capabilities it can draw on right now.

A border draws around the context-side resource cluster with a Context label at the top.

How it runs.

Environment

A named environment is a bundle of runtime settings—env vars, model choices, permissions—you can swap without rebuilding your configuration.

Plain values like region or log level can travel with you. Secrets stay referenced from your keychain or vault, not pasted into shared files.

Switch environments

Move between dev, staging, and production with one command—same setup, different runtime values.

Switch audiences

Use the same underlying configuration for different customers or teams by changing the active environment.

A border draws around the environment-side resource cluster with an Environment label at the top.

A reusable recipe.

Layer

A layer is a reusable recipe for agent configuration—a named bundle of context-side resources with optional environment defaults.

Versioned

Track changes over time with semver—know exactly which recipe you applied and when.

Shareable

Publish to a catalog for your organization or hand off a portable export to teammates.

Composable

Combine layers and apply them at project level (one repo) or machine level (your global setup).

Tag a layer profile when it represents a switchable global preset—same storage and publish pipeline, surfaced in the Profiles catalog tab.

Individual resource boxes fade away. Context and Environment regions stack inside a Layer wrapper with a Layer title.

Your personal collection.

Deck

A deck is your personal collection of layers—the curated stack you reach for across projects and machines.

Cherry-pick from catalogs

Org catalogs publish versioned layers for multiplayer discovery—pull what you need into your deck without adopting a team baseline wholesale.

Apply to projects

Use `deck apply` to materialize your personal stack onto a repo. Profiles are separate: they switch global machine harness files with `profile use`.

How it fits together

Resource
Atomic building blocks—context-side (what) or environment-side (how).
Context
What the agent knows and can use before it acts.
Environment
Runtime settings you swap between dev, staging, production, or teams.
Layer
A versioned recipe you combine and apply.
Profile
A tagged layer for global machine presets—switch with `profile use`.
Deck
Your personal layer collection—cherry-pick from catalogs, apply to projects.
Catalog
Org-published layers for multiplayer browse and install.
Account
Cloud login identity for publish, search, and pull.
Three labeled layer boxes appear side by side inside a Deck wrapper with a Deck title above.

Ready to try it?

Browse the open catalog or create an account to publish your own layers and decks.