-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Scott Singleton edited this page May 25, 2026
·
5 revisions
Pack the build down tight.
A small-core, plugin-driven build automation framework for .NET. Cross-platform. Honest about resources. Forkable.
This wiki is the developer-facing reference. The main README carries the elevator pitch, origin story, and design philosophy; everything operational lives here.
-
Getting Started — install the global tool, scaffold a
Build.cs, run your first target. 5 minutes. - Build Script Authoring — the fluent target DSL, dependencies, conditionals, failure handlers.
-
Parameter & Secret Injection —
[Parameter],[Secret], value-injection attributes ([Solution],[GitRepository],[NuGetPackage]).
-
Module Catalog — the canonical list of all
Tamp.*packages + the version-pin convention. 50+ first-party satellites currently published, plus the typed contract packages (Tamp.Sarif,Tamp.Sbom) and theTamp.Security.Pipelineone-import meta-package.- .NET toolchain: Tamp.NetCli.V8 / V9 / V10, Tamp.DotNetCoverage.V18, Tamp.Coverlet.V6, Tamp.ReportGenerator.V5, Tamp.EFCore.V8/V9/V10, Tamp.GitVersion.V6.
-
Containers / build: Tamp.Docker.V27 (incl. compose + buildx), Tamp.Helm.V3, Tamp.Sccache, Tamp.AdjacentContainer (+
.Local,.Provisioning), Tamp.Testcontainers.V4. - JS toolchain: Tamp.Yarn.V4, Tamp.Npm.V10, Tamp.Turbo.V2, Tamp.Vite.V5, Tamp.GraphQLCodegen.V5, Tamp.Playwright.V1, Tamp.Eslint.V9.
- Rust + Microsoft Store ship chain: Tamp.Cargo → Tamp.Tauri.V2 → Tamp.Msix → Tamp.MicrosoftStoreCli.
- Azure / ADO ops: Tamp.AzureCli.V2, Tamp.Bicep, Tamp.Kudu, Tamp.AzureAppService, Tamp.PostgresFlex, Tamp.AzureFunctionsCoreTools.V4, Tamp.AzureStaticWebApps.V2, Tamp.ServiceBus.V7/V8, Tamp.AdoGit, Tamp.AdoRest.V7, Tamp.AdoServiceConnection.V1, Tamp.YouTrack.
-
Classic Windows deploy chain (Wave 4): Tamp.SqlPackage, Tamp.SqlCmd, Tamp.MSBuildClassic, Tamp.MsDeploy. For hybrid / modernized .NET stacks doing
.dacpacpublish + on-prem IIS payload sync. - Supply-chain security: foundation contracts (Tamp.Sarif, Tamp.Sbom); SBOM producers (Tamp.CycloneDx.V6, Tamp.Syft); scanners (Tamp.TruffleHog.V3 secrets, Tamp.CodeQL.V2 SAST, Tamp.OpenGrep pattern-SAST, Tamp.OsvScanner.V2 SCA, Tamp.Trivy container/IaC, Tamp.Grype dep-CVE, Tamp.SonarScanner.V10 quality, Tamp.Eslint.V9 TS/JS); triage sinks (Tamp.DependencyTrack.V1, Tamp.DefectDojo.V2); one-import meta-package Tamp.Security.Pipeline.
- Notifications: Tamp.Telegram (Slack + Discord siblings planned).
- Source control / VCS: Tamp.GitHubCli.V2, Tamp.GitHubAttest (Sigstore-backed GitHub Artifact Attestations).
- Foundation: Tamp.Http (base for satellite HTTP-API wrappers), Tamp.Sarif + Tamp.Sbom (typed contracts), Tamp.Templates.AspNet.
-
Tamp.Analyzers (TAMP001–TAMP006) — Roslyn analyzers bundled inside
Tamp.Core.nupkgthat catch common build-script mistakes at compile time. TAMP004 (1.6.0+) is what makesSecret.Reveal()safe to expose publicly without per-satelliteInternalsVisibleToentries. TAMP005 + TAMP006 (1.9.0+) catch<Tool>field / property names that shadow the wrapper's static class.
-
AbsolutePath, RootDirectory, TemporaryDirectory — first-class path type with
/operator, glob, hash, copy/move; build-script statics. - Verify — runtime preconditions for build scripts.
-
Paths & Filesystem — full method reference for the
AbsolutePathAPI (Tamp.Core 1.8.0+).
-
Logging & Verbosity —
LogLevel,--verbosity, build summary table. -
Failure Handling —
FailureMode,OnFailureOf,AssuredAfterFailure,OnlyWhenvsRequires. -
ADR-0018 diagnostics emission contract —
Tamp.Build/Tamp.Build.Targets/Tamp.Build.CommandsActivitySources plus theTamp.BuildMeterwith counters and histograms covering builds / targets / commands / memory. Compatible with any OTel pipeline;tamp-beaconis the self-hostable receiver + dashboard. See ADR 0018.
- CI Host Integrations — typed adapters and emit commands for GitHub Actions, Azure DevOps, TeamCity.
-
Tamp for VS Code — VS Code extension (sideload as
.vsixfrom GitHub Releases): activity-bar targets tree, Run / Dry Run / View Plan via right-click or CodeLens, plan-preview webview, hover docs, per-workspace run history. Requiresdotnet-tamp1.9.0+. - A JetBrains Fleet sibling (
tamp-fleet) is on the v2 roadmap.
- Migrating from NUKE — concept-by-concept mapping. Where Tamp matches NUKE's surface and where it deliberately diverges.
-
Migrating from Cake — Cake script + addins → Tamp
Build.cs+ modules.
- FAQ
- Glossary
- Pitfalls — gotchas not (yet) caught by analyzers.
-
Architecture Decision Records — every load-bearing design choice is recorded under
docs/adr/in the main repo. Read these before proposing a change to the corresponding area.
- Repository — source, issues, releases.
- Changelog — release notes.
- Maintainers — who's authorised on this project.
- Code of Conduct.
- Security policy — vulnerability disclosure.
Start here
Modules
- Module Catalog (canonical list, 50+ satellites)
- .NET toolchain
- Containers
- JS toolchain
- Supply-chain security
Analyzers
Tooling
Execution
CI integration
Editor integration
Migration
Reference
Project