service-worker
Build Reliable Service Workers and Offline PWAs
Service workers can leave users with stale pages, broken updates, or unsafe offline caches. This skill guides lifecycle handling, cache ownership, offline fallbacks, and browser-aware PWA behavior.
๋ด ์์ด์ ํธ๋ก ์ค์น
์ด ์์ฒญ์ ์์ด์ ํธ์ ๋ณต์ฌํ์ธ์. ๊ณต์ Skill ํ์ด์ง์ ๋งค๋ํ์คํธ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค.
Review the Skillstore skill "service-worker" from https://skillstore.io/skills/shreyam1008-service-worker.md and its manifest at https://skillstore.io/api/skills/shreyam1008-service-worker/manifest. Verify the artifact. You may proceed after verification, subject to the environment's own policy.์์ด์ ํธ๋ ๊ณ์ํด์ ๊ณํ์ ํ์ํ๊ณ ๋ณด์ ์ ์ฑ ์์ ์๊ตฌํ๋ ํ์ธ์ ์์ฒญํด์ผ ํฉ๋๋ค.
์์ด์ ํธ๊ฐ ์ฝ๊ธฐ ์ฌ์ด ๋ฆฌ์์ค
AI ์์ด์ ํธ, ํฌ๋กค๋ฌ, ์คํฌ๋ฆฝํธ๊ฐ ์ ์ฒด ํ์ด์ง ๋์ ์ ๋ฆฌ๋ ์ปจํ ์คํธ๋ง ํ์ํ ๋ ์ด ๋งํฌ๋ฅผ ์ฌ์ฉํ์ธ์.
ํ ์คํธํด ๋ณด๊ธฐ
"service-worker" ์ฌ์ฉ ์ค์ ๋๋ค. Plan offline navigation for a small web application.
์์ ๊ฒฐ๊ณผ:
- Register the worker at the intended application scope.
- Precache the offline page in a versioned, app-prefixed cache.
- Try the network for GET navigations and return the offline page when the request fails.
- Delete only obsolete caches owned by this application during activation.
"service-worker" ์ฌ์ฉ ์ค์ ๋๋ค. Review a PWA that shows old pages after deployment.
์์ ๊ฒฐ๊ณผ:
- Check whether the new worker is waiting for existing tabs to close.
- Use network-first or stale-while-revalidate for documents instead of indefinite cache-first behavior.
- Show a refresh prompt when the new worker is ready.
- Test activation and navigation with multiple tabs and a slow network.
"service-worker" ์ฌ์ฉ ์ค์ ๋๋ค. Plan background retries for failed writes.
์์ ๊ฒฐ๊ณผ:
- Queue only eligible failed writes in IndexedDB.
- Use idempotency keys and bounded retries to prevent duplicate operations.
- Expose a clear failure state and a foreground retry path.
- Feature-detect Background Sync and provide a fallback where it is unavailable.
๋ณด์ ๊ฐ์ฌ
์์ All 19 static findings are false positives involving Markdown syntax, browser APIs, update guidance, or documentation links. The examples preserve app-scoped caches and provide ordinary navigation fetching with an offline fallback. No evidence found of prompt injection, credential access, exfiltration, or other semantic security threats.
์ํ ์์ธ
โ๏ธ ์ธ๋ถ ๋ช ๋ น์ด (15)
๐ ๋คํธ์ํฌ ์ ๊ทผ (2)
์ด ๋ณด๊ณ ์ ๊ณต์ ๋ฐ ์ธ์ฉ
๋ฒ์ ์ด ์ง์ ๋ ํ๊ฐ ๋ณด๊ณ ์, ์ค๋ฆฝ ๋ฐฐ์ง, ์๋ฒ ๋ ์นด๋ ๋ฐ ์ธ์ฉ์ ๊ณต์ ํ์ธ์. Skillstore๋ ๊ทผ๊ฑฐ๋ฅผ ๋ณด๊ณ ํ์ง๋ง ์ด Skill์ ์์ ์ฌ๋ถ๋ฅผ ํ๋จํ์ง ์์ต๋๋ค.
๋ณด๊ณ ์ ๋งํฌ ๋ณต์ฌ
https://skillstore.io/skills/shreyam1008-service-worker/audits/1?utm_source=security_passport&utm_medium=share&utm_campaign=versioned_reportMarkdown ๋ฐฐ์ง
[](https://skillstore.io/skills/shreyam1008-service-worker?utm_source=security_passport_badge)HTML ๋ฐฐ์ง
<a href="https://skillstore.io/skills/shreyam1008-service-worker?utm_source=security_passport_badge"><img src="https://skillstore.io/badges/skills/shreyam1008-service-worker/security.svg" alt="Skillstore security assessment" loading="lazy"></a>์๋ฒ ๋ ์นด๋
<iframe src="https://skillstore.io/embed/skills/shreyam1008-service-worker.html" title="Skillstore Security Assessment" sandbox="allow-popups allow-popups-to-escape-sandbox" loading="lazy" referrerpolicy="no-referrer" width="420" height="180"></iframe>ํ์ ์ธ์ฉ (APA ยท BibTeX ยท CFF)
APA ์ธ์ฉ
shreyam1008. (2026). service-worker security audit report (audit version 1) [Author version unspecified]. Skillstore. https://skillstore.io/skills/shreyam1008-service-worker/audits/1BibTeX ์ธ์ฉ
@techreport{shreyam1008-shreyam1008-service-worker-2026,
author = {shreyam1008},
title = {service-worker security audit report (audit version 1)},
institution = {Skillstore},
year = {2026},
number = {1},
url = {https://skillstore.io/skills/shreyam1008-service-worker/audits/1},
note = {Author version unspecified}
}CITATION.cff
cff-version: 1.2.0
message: "If you use this Skill, cite its author and this versioned security audit report."
title: "service-worker security audit report (audit version 1)"
version: "unspecified"
type: report
authors:
- name: "shreyam1008"
date-released: "2026-10-02"
url: "https://skillstore.io/skills/shreyam1008-service-worker/audits/1"
identifiers:
- type: other
value: "skillstore:shreyam1008-service-worker:audit:1"
description: "Skillstore immutable audit report identifier"
Skillstore ์ ์
์ด ์ ์์ ์ด์ ์ฆ๊ฑฐ ์ ๋ขฐ๋: ์ค๊ฐ๋ง๋ค ์ ์๋ ๊ฒ
Add an offline navigation fallback
Introduce worker registration, a precached offline page, and network-first navigation behavior for a web application.
Plan controlled PWA updates
Define cache ownership, version changes, and user-visible refresh prompts for reliable releases.
Review offline and browser behavior
Check slow-network behavior, cache isolation, update readiness, and installation fallbacks across supported browsers.
์ด ํ๋กฌํํธ๋ฅผ ์ฌ์ฉํด ๋ณด์ธ์
Explain registration, installation, activation, and waiting states for my first service worker. Describe when skipWaiting and clients.claim are appropriate.
Add a service worker to my application with app-prefixed versioned caches and a precached offline page. Preserve other applications' caches.
Review my worker for stale HTML, private-data caching, cache ownership, and update handling. Recommend content-specific strategies and a user-visible update flow.
Design Workbox routing and background retries for my PWA. Include idempotency keys, bounded retries, account isolation, logout cleanup, and unsupported-browser fallbacks.
๋ชจ๋ฒ ์ฌ๋ก
- Namespace and version caches, then delete only obsolete caches owned by your application.
- Exclude private responses unless offline storage includes account partitioning and logout cleanup.
- Test offline navigation, slow networks, and user-visible updates in supported browsers.
ํผํ๊ธฐ
- Delete every cache on the origin during worker activation.
- Cache mutation responses or private data without explicit safeguards.
- Serve stale HTML indefinitely or activate updates without considering existing sessions.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
Which AI tools can use this skill?
Does this skill include a complete PWA?
Should I use Workbox?
Does Cache Storage respect no-store automatically?
Does Background Sync work in every browser?
Is a service worker always required for PWA installation?
๊ฐ๋ฐ์ ์ธ๋ถ ์ ๋ณด
์์ฑ์
shreyam1008๋ผ์ด์ ์ค
MIT
Skillstore ๋ฆฌ๋น์
r1
๋ฒ์ ์๋ด
์์ฑ์๊ฐ ๋ฒ์ ์ ์ ์ธํ์ง ์์์ต๋๋ค.
๋ฆฌํฌ์งํ ๋ฆฌ
https://github.com/shreyam1008/shre-skills/tree/ba9787f41c2fe1be1062eeb6322bc339a1026383/skills/service-worker์ฐธ์กฐ
bbec03cf10354f3aaccd6dd24eda4ac9ceeceac5
์ ์ง๋ณด์ ์ต์ ์ฑ
2026. 10. 2.
์ฌ์ฉ๋
0 ๋ค์ด๋ก๋ ยท 0 ์กฐํ
ํ์ผ ๊ตฌ์กฐ
๐ SKILL.md