AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Master Schedule

skill-alpacalabsllc-skills-for-architects-master-schedule · by AlpacaLabsLLC

Silent setup check. Verifies master-schedule.json exists and the sheet is accessible. If not, copies the template sheet to the user's account and writes master-schedule.json. Called automatically by other skills before reading or writing product data.

No reviews yet
0 installs
29 views
0.0% view→install

Install

$ agentstack add skill-alpacalabsllc-skills-for-architects-master-schedule

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-alpacalabsllc-skills-for-architects-master-schedule)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
2mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Master Schedule? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

/master-schedule — Sheet Setup Check

Called automatically by all product skills before reading or writing. Can also be run manually to reconnect or reset.

Template sheet ID: 1mWnExnSWTKJv0vbu1mDnrQFmv_Iz_fNklIeuBYfMB5k


Step 1: Check for master-schedule.json

cat ./master-schedule.json 2>/dev/null

Legacy config: if master-schedule.json is missing but ./canoa.json exists (written by plugin versions ≤ 1.0.0), migrate it — mv ./canoa.json ./master-schedule.json — and continue as found.

Found and valid → Step 2 (verify access)

Not found → Step 3 (auto-setup)


Step 2: Verify Sheet Access

Call mcp__google-sheets__list_sheets with the master_sheet_id from master-schedule.json.

  • Success → sheet is accessible. Return silently — the calling skill continues.
  • 404 / error → sheet was deleted or moved. Proceed to Step 3 to set up a new one.

Step 3: Auto-Setup

No config found or sheet inaccessible. Set up automatically without asking the user.

3a: Copy the template

Attempt to copy the template sheet using the Google Drive API (files.copy). If a Drive MCP tool is available, use it:

drive.files.copy
  fileId: "1mWnExnSWTKJv0vbu1mDnrQFmv_Iz_fNklIeuBYfMB5k"
  title: "Product Library — {today's date}"

If no Drive copy tool is available, fall back to creating a new spreadsheet and writing the header row:

  1. Call mcp__google-sheets__create_spreadsheet with title "Product Library — {today's date}"
  2. Write the 33-column header row to Sheet1!A1:AG1 using the CSV header from ../../schema/product-schema.md

Note in master-schedule.json whether this was a template copy or a fresh sheet ("setup": "copy" or "setup": "fresh").

3b: Identify the Products tab

Look for a tab named Products. If not found (e.g. fresh sheet named Sheet1), use whatever tab exists and record its name in master-schedule.json.

3c: Write master-schedule.json

{
  "master_sheet_id": "{new sheet ID}",
  "sheet_title": "Product Library — {date}",
  "sheet_url": "https://docs.google.com/spreadsheets/d/{id}",
  "products_tab": "Products",
  "project_name": "",
  "setup": "copy",
  "created_at": "{ISO timestamp}"
}

3d: Notify the user

✓ Product library created and connected.
  docs.google.com/spreadsheets/d/{id}

  You may want to rename this sheet and set a project name.
  Run /master-schedule to update.

Then return — the calling skill continues.


Manual Run

When invoked directly (/master-schedule), run the same flow but also:

  • If master-schedule.json exists and the sheet is accessible, show current status:
Product library connected.

  Project:  {project_name or "(unnamed)"}
  Sheet:    {sheet_title}
  URL:      docs.google.com/spreadsheets/d/{id}
  Tab:      {products_tab}

Options:
  1. Update project name
  2. Connect a different sheet (paste URL)
  3. Reset (create a new copy of the template)
  • If user chooses (2), ask for URL, validate, update master-schedule.json.
  • If user chooses (3), run Step 3 again.

MCP Connection Errors

If any MCP call fails with "tool not found" or auth error, stop and report:

Google Sheets MCP is not connected or not authenticated.

To connect it, add to ~/.claude/mcp_settings.json:

{
  "mcpServers": {
    "google-sheets": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-google-sheets"],
      "env": {
        "GOOGLE_SERVICE_ACCOUNT_KEY": ""
      }
    }
  }
}

Then restart Claude Code and try again.
Need help creating a service account? Ask for instructions.

Edge Cases

| Situation | Handling | |-----------|----------| | master-schedule.json exists, sheet accessible | Return silently | | master-schedule.json exists, sheet deleted | Auto-create new copy, update master-schedule.json | | master-schedule.json missing | Auto-create new copy, write master-schedule.json | | Drive copy tool not available | Fall back to fresh sheet + header row | | MCP not connected | Stop, show setup instructions |

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.