CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

firebase-app-hosting-basics

Deploys and manages full-stack web applications (Next.js, Angular) with Server-Side Rendering (SSR) using Firebase App Hosting. Use when deploying Next.js/Angular apps, configuring apphosting.yaml or firebase.json apphosting blocks, managing secrets, setting up GitHub CI/CD, or configuring Blaze billing requirements. Don't use for classic static web hosting, Auth, Firestore, Crashlytics, or Xcode.

Quality

93%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

86%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured overview with copy-paste-ready commands, a clear deploy sequence, and exemplary progressive disclosure into three real one-level-deep reference files. The only weaknesses are minor: a few editorial asides could be trimmed for token efficiency, and the deploy workflow could add an explicit post-deploy validation step.

Suggestions

Remove the "Description" section that restates the frontmatter description, and trim editorial asides like "This is the recommended flow for most users" and "This is only recommended for more advanced users, and is not required to use App Hosting" — the Hosting vs App Hosting section already conveys the recommendation.

Add an explicit validation step after "deploy" (e.g., check the backend status or deployment URL with apphosting:backends:get, and what to inspect on failure) so the workflow has a checkpoint and a recovery path.

Inline a minimal apphosting.yaml example in step 2 (or state its key fields) so the primary flow does not require a reference hop before the backend can be created.

DimensionReasoningScore

Conciseness

The body is mostly lean — decision guidance, a complete firebase.json snippet, and copy-paste commands — but includes minor trimmable padding: "This is the recommended flow for most users", "This is only recommended for more advanced users, and is not required to use App Hosting", and a Description section that partially restates the frontmatter. Anchor 4 (efficient, minor over-explanation); not 3 because there is no conceptual explanation of things Claude already knows, and not 5 because those editorial asides cost tokens without adding instruction.

4 / 5

Actionability

Fully executable guidance: a complete "apphosting" firebase.json block, copy-paste commands with all flags ("apphosting:backends:create --backend my-app-id --primary-region us-central1 --root-dir /", piped "secrets:set" with "--data-file - --force", "secrets:grantaccess", and "deploy"). Matches anchor 5 — commands are copy-paste ready and cover the common deploy flow; not 4 because there are no real gaps in the primary path.

5 / 5

Workflow Clarity

The deploy-from-source flow is a clear, correctly ordered 5-step sequence with a quota escape hatch ("apphosting:backends:list; switch --primary-region... if a region hits its 10-backend quota"), but it lacks an explicit validation checkpoint (e.g., confirm the backend/build status after "deploy") and any error-recovery loop. Anchor 4 (clear sequence, minor validation gaps); not 5 because no explicit verify/retry step exists, and not 3 because the sequence itself is complete and deploys are not destructive or batch operations requiring feedback loops.

4 / 5

Progressive Disclosure

The body is a concise overview that offloads detail to three well-signaled references — "[Configuration](references/configuration.md)", "[CLI Commands](references/cli_commands.md)", "[Emulation](references/emulation.md)" — all of which exist on disk, are one level deep, and contain no nested references. Matches anchor 5 (clear overview, well-signaled one-level-deep references, content appropriately split).

5 / 5

Total

18

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is exemplary: third-person voice, concrete capabilities, an explicit "Use when..." trigger clause with concrete file and feature names, and negative triggers that clearly separate it from classic Hosting and other Firebase skills. It matches the strongest anchors on every dimension.

DimensionReasoningScore

Specificity

"Deploys and manages full-stack web applications (Next.js, Angular) with Server-Side Rendering (SSR) using Firebase App Hosting" plus "configuring apphosting.yaml or firebase.json apphosting blocks, managing secrets, setting up GitHub CI/CD, or configuring Blaze billing requirements" lists multiple concrete actions with comprehensive coverage, matching the anchor-5 example. Not 4: no coverage gaps exist across deploy, configure, secrets, CI/CD, and billing.

5 / 5

Completeness

Explicitly answers "what" ("Deploys and manages full-stack web applications... using Firebase App Hosting") and "when" ("Use when deploying Next.js/Angular apps, configuring apphosting.yaml or firebase.json apphosting blocks, managing secrets, setting up GitHub CI/CD, or configuring Blaze billing requirements") with concrete trigger phrases, matching anchor 5 exactly.

5 / 5

Trigger Term Quality

Natural terms cover the space users would actually say — "deploying Next.js/Angular apps", "apphosting.yaml", "firebase.json", "managing secrets", "GitHub CI/CD", "static web hosting" — with synonyms (SSR spelled out and abbreviated) and concrete file names. Matches anchor 5; not 4 because keyword coverage is comprehensive rather than missing natural terms.

5 / 5

Distinctiveness Conflict Risk

"Don't use for classic static web hosting, Auth, Firestore, Crashlytics, or Xcode" carves out an explicit niche against sibling Firebase skills, and "Firebase App Hosting" is a distinct named product with distinct triggers. Minimal conflict risk, matching anchor 5; not 4 because the negative triggers eliminate even minor overlap with related Firebase skills.

5 / 5

Total

20

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository

firebase/agent-skills

Path

skills/firebase-app-hosting-basics/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.