Agent skill

Construction Business Agent

by hewi333 in hewi333/Mom-n-Pop-Skills

Runs a construction company's back office by bridging Gmail, Drive and JobTread: routing email attachments to the PM system, checking project status and sending daily Telegram briefings.

MITAuto-check: notesProductivity & Automation

Install Construction Business Agent

skills CLI
$ npx skills add hewi333/Mom-n-Pop-Skills --skill construction-agent -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install hewi333/Mom-n-Pop-Skills construction-agent --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/hewi333/Mom-n-Pop-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/construction-agent .claude/skills/construction-agent && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
construction-agent
GitHub stars
122
Token cost
~2.3k tokens
SKILL.md length
1,030 words
Files
7 (incl. scripts, references)
Skills in repo
13
Repo updated
First seen
Licence
MIT

At a glance

Runs a construction company's back office by bridging Gmail, Drive and JobTread: routing email attachments to the PM system, checking project status and sending daily Telegram briefings.

  • Works in 4 steps: Email → Drive → Project Management… → Email Triage → Project Management Queries → …
  • Routing a newly emailed project document from Drive into JobTread automatically
  • SKILL.md covers Overview, When to Use, The Pattern and Core Workflows, plus 8 more sections
  • Runs Python scripts from its folder; calls ssh; reaches api.jobtread.com; needs GOOGLE_CLIENT_SECRET and JOBTREAD_GRANT_KEY

What it does

This reference implementation bridges three systems a construction or trades business already uses: Google Workspace email where leads and project documents arrive, a Drive folder where an existing script already dumps email attachments, and a project management system such as JobTread where those files and tasks need to end up. It targets an owner who gets documents by email, already has attachments landing in Drive, and does not want to manually download and re-upload everything into the PM system.

Most actions follow a draft-approve-execute pattern: the agent drafts a reply or upload, the owner approves it over a Telegram message, and only then does the agent execute. The one exception is the Drive-to-PM file routing itself, which runs autonomously on a cron every 15 minutes because it only moves files rather than deleting them, preserving the originals, though the owner still gets a notification of what was routed. Bundled Python scripts cover daily briefings, moving files from Drive into JobTread, Gmail access and the JobTread Pave API, with setup references for Google Workspace and the JobTread API.

When your agent uses it

  • Routing a newly emailed project document from Drive into JobTread automatically
  • Getting a daily Telegram briefing of today's tasks, deadlines and new emails
  • Checking project status in the PM system without opening it directly
  • Triaging what came into the inbox today for a construction business

Example prompts

  • “What came into the inbox today that needs routing to JobTread?”
  • “Send me this morning's briefing of today's tasks and deadlines.”
  • “Check the status of the Oak Street remodel project in JobTread.”
  • “Route the new attachment in the Drive raw inbox to the right JobTread project.”

Requirements

  • Google Workspace (Gmail and Drive) access
  • A JobTread Pave API key
  • A Telegram bot for owner approvals and briefings
  • Python for the bundled scripts

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Email → Drive → Project Management Pipeline
  2. Email Triage
  3. Project Management Queries
  4. Daily Briefing (cron, 8 AM)

What it can do on your machine

Read from SKILL.md and the folder at commit 70a2273. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 4 files in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • ssh

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.jobtread.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • GOOGLE_CLIENT_SECRET
    • JOBTREAD_GRANT_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Construction Business Agent loads about 2.3k tokens when it runs, and up to ~4.3k if it reads all its reference files. Until then it costs about 100 tokens; SKILL.md has 1,030 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~100
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~4.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:109
    All set in `~/.hermes/.env` (chmod 600):

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from hewi333/Mom-n-Pop-Skills at commit 70a2273, republished under its MIT licence (© hewi333). 1,030 words, ~2,325 tokens.

Download SKILL.mdSave it as .claude/skills/construction-agent/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.
name
construction-agent
description
Construction company AI agent — orchestrates email (Google Workspace), project management (JobTread Pave API), and file routing for a construction business. Handles email triage, attachment routing to JobTread, project status, task management, and daily briefings via Telegram. Reference implementation for a construction/trades business with an existing email→Drive→PM pipeline.
version
1.0.0
author
Hermes Agent
license
MIT

Construction Agent — Email → Project Management Pipeline

Overview

A reference implementation of an AI agent that runs the back-office of a construction company. The agent orchestrates between three systems a construction business already uses:

  1. Email (Google Workspace / Gmail) — where leads, estimates, and project documents arrive
  2. File storage (Google Drive) — where email attachments are auto-dumped by an existing script
  3. Project management (JobTread, or similar PM system) — where files and tasks need to end up

The agent bridges the gap: it monitors Drive for new files, downloads them, uploads them to the PM system, and notifies the owner — all through text messages the owner already reads.

For who: A construction or trades business (general contractor, remodeler, specialty trade) where:

  • The owner gets project documents via email
  • Email attachments are dumped to a Drive folder (by a separate script or filter)
  • Files need to get into a PM system (JobTread, Procore, Buildertrend, etc.)
  • The owner doesn't want to manually download and re-upload everything

When to Use

  • A customer or subcontractor emails a project document (plans, permits, invoices, photos)
  • The owner asks "what's in the inbox?" or "what came in today?"
  • A scheduled cron checks for new files to route to the PM system
  • The owner wants a morning briefing: today's tasks, deadlines, new emails
  • The owner needs a project status check from the PM system

The Pattern

Every action follows the same philosophy as all Mom-n-Pop skills:

  1. Agent drafts — the agent reads email, prepares file uploads, drafts replies
  2. Owner approves — the owner gets a Telegram message, confirms before anything is sent
  3. Agent executes — only after approval does anything go out

The exception is file routing (Drive → PM system), which runs autonomously on a cron because it's non-destructive (files are moved, not deleted; originals are preserved). The owner still gets a notification of what was routed.

Core Workflows

1. Email → Drive → Project Management Pipeline

This is the main pipeline. Many construction businesses already have a script that dumps email attachments to a Drive "raw inbox" folder. The agent completes the circuit:

Email arrives → existing script dumps attachment to Drive →
Agent polls Drive folder (every 15 min via cron) →
Downloads attachment locally (temp) →
Uploads to PM system via API →
Deletes local temp file →
Moves Drive file to "processed" folder →
Sends Telegram notification to owner

Why the agent does this: The previous setup got files into Drive, but getting them from Drive into the PM system required manual download + upload. The agent automates that last mile.

2. Email Triage
  • Reads Gmail inbox (via Google API)
  • Summarizes unread emails
  • Drafts replies (dual-approval: agent drafts, owner approves via Telegram or Gmail)
  • Flags urgent items
3. Project Management Queries
  • Query projects, tasks, schedules from the PM system
  • Create/update tasks
  • Daily briefing: today's tasks, upcoming deadlines
  • Weekly summary: project progress, completed tasks
4. Daily Briefing (cron, 8 AM)
  • New emails from overnight
  • Today's tasks from the PM system
  • Upcoming deadlines
  • Files processed

API Integrations

Google Workspace
  • Auth: OAuth2 (one-time browser flow, token persists at ~/.hermes/cache/google_token.json)
  • APIs: Gmail, Google Drive, Google Calendar
  • Scopes: gmail.readonly, gmail.send, drive.readonly, drive.file, calendar.readonly
  • Setup: See references/google-workspace-setup.md
JobTread (Pave API)

JobTread is a construction-specific PM system. The Pave API pattern applies to similar construction PM tools (Procore, Buildertrend, etc.) — adapt the query language to your specific system.

  • Endpoint: POST https://api.jobtread.com/pave
  • Auth: Grant key (from JobTread Settings → Integrations → API)
  • Query Language: Pave (similar to GraphQL, but not identical)
  • Grant keys expire after 3 months of inactivity — must use regularly
  • Setup: See references/jobtread-api-setup.md

Environment Variables

All set in ~/.hermes/.env (chmod 600):

bash
# Google Workspace
GOOGLE_CLIENT_ID=your_client_id_here
GOOGLE_CLIENT_SECRET=your_client_secret_here
GOOGLE_MAILBOX=info@yourdomain.com

# JobTread (or your PM system)
JOBTREAD_GRANT_KEY=your_grant_key_here
JOBTREAD_ORG_ID=your_org_id_here

# Google Drive (for attachment pipeline)
GOOGLE_DRIVE_RAW_FOLDER_ID=your_raw_folder_id
GOOGLE_DRIVE_PROCESSED_FOLDER_ID=your_processed_folder_id

Cron Jobs

NameScheduleWhat
Daily Briefing0 8 * * *Email summary, today's tasks, deadlines
Drive Poll*/15 * * * *Check Drive for new attachments → upload to PM system
Weekly Summary0 9 * * 1Project progress, completed tasks, files processed

Key Scripts

ScriptPurposeRequires
scripts/google_mail.pyGmail read/draft/send (Google API)GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, GOOGLE_MAILBOX
scripts/jobtread_pave.pyJobTread Pave API clientJOBTREAD_GRANT_KEY, JOBTREAD_ORG_ID
scripts/drive_to_jobtread.pyEmail→Drive→PM pipelineGoogle Drive + JobTread credentials
scripts/daily_briefing.pyMorning briefing generatorAll of the above
Show full SKILL.md (413 more words)Show less

Adapting to Other PM Systems

If you use Procore, Buildertrend, CoConstruct, or another construction PM system instead of JobTread:

  1. Replace scripts/jobtread_pave.py with a client for your PM system's API
  2. Update the query/mutation structure in scripts/drive_to_jobtread.py to use your PM system's file upload endpoint
  3. Update scripts/daily_briefing.py to query your PM system's task/project schema
  4. Update the environment variables to match your PM system's auth method

The pipeline pattern (Drive → download → upload → move → notify) stays the same.

Pitfalls

  1. PM system API keys can expire — JobTread grant keys expire after 3 months of inactivity. A daily briefing cron that queries the API keeps it active. If your PM system has similar expiration, keep it active with scheduled calls.

  2. Google OAuth tokens refresh automatically but can fail if the refresh token is revoked (password change, admin revocation). Monitor for auth errors and re-run the authentication flow when needed.

  3. Pave is NOT GraphQL — it's similar but different syntax. Inputs are passed after the $ symbol, and empty braces {} mean "return this field." Check the API explorer for your PM system before assuming GraphQL syntax works.

  4. File routing is non-destructive — the pipeline moves Drive files to a "processed" folder rather than deleting them. This is intentional. If your pipeline deletes, add a confirmation step.

  5. Headless VPS auth — the one-time Google OAuth flow needs a browser. Use SSH port forwarding (ssh -L 8080:localhost:8080) to complete the flow from your local machine, or run the auth on your local machine and copy the token file to the VPS.

  6. Large file handling — construction documents (plans, permits) can be large. The Drive → PM upload uses a temp directory; ensure sufficient disk space. Clean up temp files after each run.

Verification Checklist

  • Google Cloud Project created with Gmail, Drive, Calendar APIs enabled
  • OAuth credentials created (Desktop app type)
  • Environment variables set: GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, GOOGLE_MAILBOX
  • One-time OAuth authentication completed (token saved)
  • Test: google_mail.py read --count 5 returns inbox
  • JobTread (or PM system) grant key obtained
  • Environment variables set: JOBTREAD_GRANT_KEY, JOBTREAD_ORG_ID
  • Test: jobtread_pave.py projects returns project list
  • Drive folder IDs identified (raw + processed)
  • Test: drive_to_jobtread.py --dry-run shows pending files
  • Test: drive_to_jobtread.py processes one file end-to-end
  • Daily briefing cron configured and sending
  • Drive poll cron configured and running
  • outlook-graph — Microsoft 365 email alternative (if the business uses Outlook instead of Google Workspace)
  • crm-lite — lightweight CRM if the PM system doesn't handle lead tracking
  • lead-to-payment — full sales pipeline orchestration
  • references/google-workspace-setup.md — step-by-step Google OAuth setup
  • references/jobtread-api-setup.md — JobTread Pave API guide

© hewi333, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 6 other files (scripts, references) in skills/construction-agent of hewi333/Mom-n-Pop-Skills.

  • SKILL.md
  • references/google-workspace-setup.md
  • references/jobtread-api-setup.md
  • scripts/daily_briefing.py
  • scripts/drive_to_jobtread.py
  • scripts/google_mail.py
  • scripts/jobtread_pave.py

Open the folder on GitHubat commit 70a2273

Compare with similar skills

Construction Business Agent next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Construction Business Agent compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Construction Business Agent this skillhewi333/Mom-n-Pop-Skills122—~2.3kAutomated safety check: NotesMIT
Process Inboxtelegramdesktop/tdesktop33k2 repos~4.5kAutomated safety check: PassGPL-3.0
Continuetelegramdesktop/tdesktop33k2 repos~9.4kAutomated safety check: PassGPL-3.0
Google Workspaceyc-software/qm15k—~1.8kAutomated safety check: PassMIT
Gws Gmail Readgoogleworkspace/cli31k1 repos~345Automated safety check: PassApache-2.0
Gws Gmail Triagegoogleworkspace/cli31k1 repos~301Automated safety check: PassApache-2.0

Similar skills

  • Process Inbox

    telegramdesktop/tdesktop

    Process the local ignored ai-tdesktop inbox into durable, independently testable Telegram Desktop task records while task execution worktrees remain active.

    33k GitHub starsUsed in 2 repos~4.5k tokens
    Productivity & AutomationAuto-check passed
  • Continue

    telegramdesktop/tdesktop

    Continue autonomous Telegram Desktop development from the shared ai-tdesktop repository.

    33k GitHub starsUsed in 2 repos~9.4k tokens
    Productivity & AutomationAuto-check passed
  • Google Workspace

    yc-software/qm

    Read and act on the user's Gmail, Google Calendar, and Google Tasks through per-user OAuth.

    15k GitHub stars~1.8k tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Gws Gmail Read

    googleworkspace/cli

    Gmail: Read a message and extract its body or headers. An agent skill from googleworkspace/cli.

    31k GitHub starsUsed in 1 repo~345 tokens
    Productivity & AutomationAuto-check passed
  • Gws Gmail Triage

    googleworkspace/cli

    Gmail: Show unread inbox summary (sender, subject, date). An agent skill from googleworkspace/cli.

    31k GitHub starsUsed in 1 repo~301 tokens
    Productivity & AutomationAuto-check passed
  • Gog

    trpc-group/trpc-agent-go

    Google Workspace CLI for Gmail, Calendar, Drive, Contacts, Sheets, and Docs.

    1.8k GitHub starsUsed in 16 repos~1.1k tokens
    Productivity & AutomationAuto-check passed

More from hewi333/Mom-n-Pop-Skills

All 13 skills in this repo
  • Lead-to-Payment Sales Flow

    hewi333/Mom-n-Pop-Skills

    Runs a small service business lead from intake through estimate, owner approval over Telegram, Stripe payment link and customer email draft to payment tracking.

    122 GitHub stars~2.8k tokensUpdated 27 days ago
    Auto-check: notes
  • QuickBooks Online Integration

    hewi333/Mom-n-Pop-Skills

    Connects a small business to QuickBooks Online for customers, estimates, invoices and payments, using Intuit OAuth 2.0 with token refresh and sandbox or production setups.

    122 GitHub stars~1.9k tokensUpdated 27 days ago
    Auto-check passed
  • Hermes Production Gateway Operations

    hewi333/Mom-n-Pop-Skills

    Procedures for changing the model, restarting and quietly tuning a live Hermes gateway that serves end-users on messaging platforms such as Telegram.

    122 GitHub stars~2k tokensUpdated 27 days ago
    Auto-check: warnings
  • CRM Lite

    hewi333/Mom-n-Pop-Skills

    A skill your agent uses when tracking customer interactions, managing leads, or building a lightweight CRM for small businesses without dedicated CRM software.

    122 GitHub stars~1.5k tokensUpdated 27 days ago
    Auto-check passed
  • Estimator Engine

    hewi333/Mom-n-Pop-Skills

    A skill your agent uses when calculating service estimates for jobs.

    122 GitHub stars~3.1k tokensUpdated 27 days ago
    Auto-check passed
  • Mailchimp Integration

    hewi333/Mom-n-Pop-Skills

    A skill your agent uses when integrating with Mailchimp for audience management, campaigns, and automation.

    122 GitHub stars~2k tokensUpdated 27 days ago
    Auto-check passed

Questions about Construction Business Agent

What does Construction Business Agent do?

Runs a construction company's back office by bridging Gmail, Drive and JobTread: routing email attachments to the PM system, checking project status and sending daily Telegram briefings. This reference implementation bridges three systems a construction or trades business already uses: Google Workspace email where leads and project documents arrive, a Drive folder where an existing script already dumps email attachments, and a project management system such as JobTread where those files and tasks need to end up. It targets an owner who gets documents by email, already has attachments landing in Drive, and does not want to manually download and re-upload everything into the PM system.

When should I use Construction Business Agent?

Construction Business Agent fits situations like: routing a newly emailed project document from Drive into JobTread automatically; getting a daily Telegram briefing of today's tasks, deadlines and new emails; checking project status in the PM system without opening it directly; triaging what came into the inbox today for a construction business.

How do I install Construction Business Agent in Claude Code?

Run `npx skills add hewi333/Mom-n-Pop-Skills --skill construction-agent -a claude-code`. Or copy the skill folder (skills/construction-agent in hewi333/Mom-n-Pop-Skills) into .claude/skills/construction-agent in your project. Claude Code loads it when a task matches its description.

How do I install Construction Business Agent in Codex?

Run `npx skills add hewi333/Mom-n-Pop-Skills --skill construction-agent -a codex`. Or copy the skill folder (skills/construction-agent in hewi333/Mom-n-Pop-Skills) into .agents/skills/construction-agent in your project. Codex loads it when a task matches its description.

Can I use Construction Business Agent in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add hewi333/Mom-n-Pop-Skills --skill construction-agent -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/construction-agent, .gemini/skills/construction-agent, .github/skills/construction-agent and .opencode/skills/construction-agent in your project.

What does Construction Business Agent need to run?

Going by SKILL.md and its folder, Construction Business Agent needs Python for the scripts in its folder, the command-line tools its instructions call (ssh) and credentials named GOOGLE_CLIENT_SECRET and JOBTREAD_GRANT_KEY. Our summary lists: Google Workspace (Gmail and Drive) access; A JobTread Pave API key; A Telegram bot for owner approvals and briefings; Python for the bundled scripts.

Does Construction Business Agent access the network?

SKILL.md names 1 domain. In commands or code: api.jobtread.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Construction Business Agent safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Construction Business Agent use?

Construction Business Agent is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Construction Business Agent use?

About 2.3k tokens (SKILL.md is roughly 9.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2k tokens, read only when the agent opens those files.

What are the alternatives to Construction Business Agent?

Skills that share tags, products or a category with Construction Business Agent: Process Inbox (telegramdesktop/tdesktop, 33k stars), Continue (telegramdesktop/tdesktop, 33k stars), Google Workspace (yc-software/qm, 15k stars) and Gws Gmail Read (googleworkspace/cli, 31k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Construction Business Agent?

hewi333 (a GitHub user) maintains it in hewi333/Mom-n-Pop-Skills, which has 122 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on September 11, 2026.

Source: hewi333/Mom-n-Pop-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.