{
  "$schema": "https://amtechai.com/skills/schemas/amtech-skill-manifest-v0.json",
  "slug": "estimate",
  "name": "estimate",
  "title": "Estimate Skill",
  "version": "1.0.0",
  "updated": "2026-06-20",
  "description": "Use when creating, drafting, pricing, or reviewing a job estimate or quote. Builds line items, computes totals, and returns a clean structured estimate from a described job and the rates you provide.",
  "source": {
    "canonicalUrl": "https://amtechai.com/skills/estimate",
    "sourceDirectory": "src/lib/skills/source/estimate",
    "repository": "https://github.com/benamtech/amtech-skills-registry",
    "repositoryCommit": "239190ab675407834c0ceef47ebbed7d148b1aca",
    "repositoryCommitSignature": "unsigned",
    "repositoryPath": "skills/estimate",
    "repositoryTree": "https://github.com/benamtech/amtech-skills-registry/tree/239190ab675407834c0ceef47ebbed7d148b1aca/skills/estimate",
    "repositoryRegistry": "https://github.com/benamtech/amtech-skills-registry/blob/239190ab675407834c0ceef47ebbed7d148b1aca/index.json",
    "codexSkillInstaller": "$skill-installer install https://github.com/benamtech/amtech-skills-registry/tree/239190ab675407834c0ceef47ebbed7d148b1aca/skills/estimate"
  },
  "entrypoints": {
    "human": "https://amtechai.com/skills/estimate",
    "use": "https://amtechai.com/skills/estimate/use.md",
    "agent": "https://amtechai.com/skills/estimate/agent.md",
    "skill": "https://amtechai.com/skills/estimate/SKILL.md",
    "archive": "https://amtechai.com/skills/estimate/estimate-1.0.0.zip",
    "checksums": "https://amtechai.com/skills/estimate/checksums.txt"
  },
  "files": [
    {
      "path": "agents/openai.yaml",
      "role": "agent-metadata",
      "title": "OpenAI/Codex interface metadata",
      "summary": "UI-facing display metadata and default prompt for environments that support it.",
      "mediaType": "application/yaml; charset=utf-8",
      "sha256": "9c04666d60084554b6c0999f27d4cb9b83f7d5ed3a52dfa58e6d97a8ca6740b6",
      "sha3_512": "4e22f480f06814f4aaff094762dcfcd761d4c8c48de35b8b5bc6fa17e4ef999d5bc98e9833321c5eb205efde1c177f359e3124af6c99190194690656a16efa29",
      "integrity": "sha256-nARmbWAIRVS2wJmfJ9TLm4P31e06Ut+ljm2XqMpnQLY=",
      "size": 378,
      "url": "https://amtechai.com/skills/estimate/files/agents/openai.yaml",
      "loadPolicy": "Read only when installing or creating a local Codex-compatible skill.",
      "permissions": []
    },
    {
      "path": "assets/estimate-schema.json",
      "role": "asset",
      "title": "Estimate schema",
      "summary": "JSON shape for a structured job estimate (amtech-job-estimate/v1).",
      "mediaType": "application/json; charset=utf-8",
      "sha256": "3873bc9aea0cd645967ac6951dc7b4254861433c00af42e9da3bbe87db2d35c7",
      "sha3_512": "c8a9e038194e99a4cffdaf601382c7e54ca4f9cbd52664fefb73005bf18a0f074ea6a451f427a31ba45c8098effca4a6fcede6ae07534d4f9b9c00979e0d9098",
      "integrity": "sha256-OHO8muoM1kWWesaVHce0JUhhQzwAr0Lp2ju+h9stNcc=",
      "size": 1667,
      "url": "https://amtechai.com/skills/estimate/files/assets/estimate-schema.json",
      "loadPolicy": "Use when the user asks for JSON or a structured estimate.",
      "permissions": []
    },
    {
      "path": "hosts/hermes.md",
      "role": "reference",
      "title": "Hermes host hint",
      "summary": "Where an AMTECH Hermes employee finds estimate context (rates, customer, tax/markup rules) and how to write back newly-learned rates.",
      "mediaType": "text/markdown; charset=utf-8",
      "sha256": "bc1863422a7f990c4e8c0a7b3f1b911b8921e1e4d7d841c9c114701162e02940",
      "sha3_512": "931c95fb12cefbf987fd30bb7c264de2f7d724d8e729235135de77bf6d3140e38201c3e550650e609837f975000c4760b83cfc8113abc192ab2487b3aa2ff55b",
      "integrity": "sha256-vBhjQip/mQxOjAp7PxuRG4kh4eTX2EHJwRRwEWLgKUA=",
      "size": 824,
      "url": "https://amtechai.com/skills/estimate/files/hosts/hermes.md",
      "loadPolicy": "Read when running as an AMTECH Hermes employee with a business brain and memory.",
      "permissions": []
    },
    {
      "path": "LICENSE.txt",
      "role": "license",
      "title": "License",
      "summary": "License for this free AMTECH skill package.",
      "mediaType": "text/plain; charset=utf-8",
      "sha256": "83924147704252984615b82aa12e363b236e83ac8c64c731f358a95144b7f8bb",
      "sha3_512": "59fae872d3d27e40cd102ff9341649362c2b38506a012f43550cbf50bbbf3b3c05a85d7853feb01dd0a200ade98c6e414d1f7af9c96aa1e42d8117326a155ecd",
      "integrity": "sha256-g5JBR3BCUphGFbgqoS42OyNug6yMZMcx81ipUUS3+Ls=",
      "size": 743,
      "url": "https://amtechai.com/skills/estimate/files/LICENSE.txt",
      "loadPolicy": "Read when evaluating reuse or redistribution.",
      "permissions": []
    },
    {
      "path": "references/estimating-discipline.md",
      "role": "reference",
      "title": "Estimating discipline",
      "summary": "How to handle missing rates, line items, minimums, taxes, markups, and the arithmetic check.",
      "mediaType": "text/markdown; charset=utf-8",
      "sha256": "6b995505de254aab1996462f9171529bc0d2e17bd411c11b652cae15f41dd78b",
      "sha3_512": "d2de8b73a3aa0f6699bc7e459ae514f5ce4fc9e08b180a0e2c61ee30733cf5397ca73365046a19cf4a42e9ee54a56107589dee7f0aee8eb79faf83cd39ec714b",
      "integrity": "sha256-a5lVBd4lSqsZlkYvkXFSm8DS4XvUEcEbZSyuFfQd14s=",
      "size": 1537,
      "url": "https://amtechai.com/skills/estimate/files/references/estimating-discipline.md",
      "loadPolicy": "Read when deciding how to price line items or handle a missing rate.",
      "permissions": []
    },
    {
      "path": "SKILL.md",
      "role": "primary-instructions",
      "title": "Canonical skill instructions",
      "summary": "The primary workflow for building a structured job estimate from a job and provided rates.",
      "mediaType": "text/markdown; charset=utf-8",
      "sha256": "9e6c801a078e20a286fe3eb68ef745edf5e7a9fdcb8a151220e0d1292152b313",
      "sha3_512": "fb749218d613fc29a6be24c3a4ca882246ce84efcc29a2df37f22a415fc2258963fe73ffc0f61657061ea147a7da1647fc23697470c73a8f1b9c723ab9e633a7",
      "integrity": "sha256-nmyAGgeOIKKG/j62jvdF7fXnqf3LihUSIODRKSFSsxM=",
      "size": 3750,
      "url": "https://amtechai.com/skills/estimate/files/SKILL.md",
      "loadPolicy": "Always read before building an estimate.",
      "permissions": []
    }
  ],
  "archive": {
    "file": "estimate-1.0.0.zip",
    "sha256": "19ee6c98756337996a4bc6109afc361015d81e0c3e30894850b719e8e7f03ac9",
    "sha3_512": "7d4f23261777c9c85990f66e7614ac85bbd25d258c440d3f8371d6503fb7c67d95df08c33fab5e77d5d8bfa9e6ea67c4ec41e750befe93b7c752505cdb7ef075",
    "integrity": "sha256-Ge5smHVjN5lqS8YQmvw2EBXYHgw+MIlIULcZ6OfwOsk=",
    "url": "https://amtechai.com/skills/estimate/estimate-1.0.0.zip"
  },
  "sourcePackage": {
    "sha256": "61015929858722f1040802f0e7e73362663d22c90a786e68e843e22bb8b90b4f",
    "sha3_512": "d32604cc811b3742f4aea1d4df5256c9115551d801d4b1adfaf947f311eb26fe2f3f02062ccb53925ca3a915cac51112c7aeac3090387a309fc9365bee55d673"
  },
  "bootstrap": {
    "use": {
      "sha256": "2908fa6727a44f1eb4eaf36c641819fd6f80ad9c54cd15da70e10bdb0ed1aea8",
      "sha3_512": "17a30f49870d7ea2a0a0f33c5349e1a0accffe564829677b56d37a0f8f79d985ee051d6c78433a1bd03a877fa31f0bd030cc6e467c0d1a2e107e5ad1ee92e76b"
    },
    "agent": {
      "sha256": "858e24b61284fe72e35f06d3c47f608e591c0f51cacaf24814b0319eab10a78b",
      "sha3_512": "b2bcfac411b3a768c06fdfe2ae00a055634d22b32f1d360ed8faf14ca7b8e860618c86dc2d135f03c34a54085c5921d079c95b8bc070db61509c4c9383cace5b"
    }
  },
  "certificate": {
    "id": "amtech:skill:estimate:7d4f23261777c9c85990f66e",
    "schemaVersion": "amtech-signed-artifact/v2",
    "algorithm": "Ed25519",
    "certificateUrl": "https://amtechai.com/skills/estimate/certificate.json",
    "signatureUrl": "https://amtechai.com/skills/estimate/certificate.sig",
    "signingKeyUrl": "https://amtechai.com/.well-known/amtech-signing-key.json",
    "signed": true,
    "trustTier": "amtech-reviewed",
    "policyVersion": "amtech-skill-policy/1",
    "attestations": {
      "conformance": {
        "method": "static-contract",
        "result": "pass",
        "evidenceUrl": "https://amtechai.com/skills/estimate/evidence/conformance.json"
      },
      "review": {
        "result": "approved",
        "reviewer": "amtech:reviewer:ben",
        "evidenceUrl": "https://amtechai.com/skills/estimate/evidence/review.json"
      }
    }
  },
  "authority": {
    "authorityUrl": "https://amtechai.com/.well-known/skill-authority.json",
    "method": "ed25519-canonical-json-v1",
    "digestAlgorithms": [
      "SHA-256",
      "SHA3-512"
    ],
    "signed": true,
    "repositoryRegistryUrl": "https://github.com/benamtech/amtech-skills-registry/blob/239190ab675407834c0ceef47ebbed7d148b1aca/index.json",
    "verify": "Verify certificate.json against certificate.sig using the Ed25519 public key at https://amtechai.com/.well-known/amtech-signing-key.json. Then confirm the signed SHA-256 and SHA3-512 archive digests, version, repository path, and the sourcePackage digest match this manifest and https://amtechai.com/.well-known/skill-authority.json. The cross-repo anchor is sourcePackage (the source byte digest), not a git commit."
  },
  "safety": {
    "scripts": "none",
    "requiresNetwork": false,
    "requiresSecrets": false,
    "riskNote": "No scripts, no network, no secrets. Use in context first. Never invents a rate; saving a file or sending to a customer happens only on explicit confirmation."
  },
  "verification": {
    "verdict": "verified",
    "trustTier": "amtech-reviewed",
    "method": "amtech-review",
    "depth": "graph-replay",
    "authoritySequence": "9",
    "checkedAt": "2026-06-20T00:00:00.000Z",
    "recipeUrl": "https://amtechai.com/skills/estimate/recipe.json"
  }
}
