plugins/certificate/skills/collecting-studying-exams/SKILL.md
studying(スタディング, member.studying.jp)のコースレッスン一覧URLから、配下の「スマート問題集」 「セレクト過去問集(学科試験対策・実技試験対策)」の全問題(問題文・選択肢・正解・解説)を科目単位で 取得し、1科目1JSONファイルに保存する。出力は creating-flashcards スキルへ渡して科目ごとに Anki フラッシュカード化できる。 Use when studying のコースレッスン一覧URL(https://member.studying.jp/course/id/<course_id>/ 形式) を渡され「問題を全部保存したい」「Anki カードにしたい」等と言われたとき。 補足トリガー: studying, スタディング, 資格試験, スマート問題集, セレクト過去問集, 問題集, JSON 保存, Anki 連携。 ブラウザ操作自体の汎用ガイドは web:automating-browser、E2E テストは web:testing-e2e-with-playwright を使う。本スキルは studying 専用の収集ワークフロー + bundled script(scripts/collect-studying.sh) +ログイン認証を提供する。
npx skillsauth add sumik5/sumik-claude-plugin collecting-studying-examsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
studying は認証必須の資格・検定対策プラットフォーム。人間はコーストップページから「基本講座」 「スマート問題集」「セレクト過去問集(学科試験対策)」「セレクト過去問集(実技試験対策)」の各セクション内で 科目を1つずつクリックして展開し、科目ページへ進んで「解説一覧表示」を開いて問題・正解・解説を確認する。
本スキルの実装(scripts/collect-studying.sh)は、Whizlabs 版(collecting-whizlabs-exams)とは異なり
1問ずつのブラウザ操作が一切不要という大きな違いがある。studying の科目ページには「解説一覧表示」リンク
(https://member.studying.jp/course/practice/list/id/<practice_id>/a/on/)があり、これに直接アクセスする
だけで、その科目に含まれる全問題・全選択肢・正解・解説が1回のページ読み込みで一括表示される。したがって
本スキルの巡回ロジックは「コーストップページで対象3セクション配下の科目トグルを全部展開して
practice_id を収集 → 科目ごとに一括表示ページを開いて抽出 → 1科目1JSON保存」という単純な2段構成になる。
ログインは通常のフォームページ(https://member.studying.jp/login/)で行う。Whizlabsのようなモーダル型
ログインではないため、agent-browser の Auth Vault(auth save/auth login)が使える可能性が高く、
本スキルは Auth Vault を第一候補として試行し、機能しない場合は通常フォーム入力 + state save/state load
にフォールバックする。
出力は 1 科目 1 JSON ファイル(<course-slug>__<category-slug>__<subject-slug>.json)で、
creating-flashcards スキルの studying_import.py ファストパスにそのまま渡して Anki へ一括登録できる。
利用上の注意(必読): studying は認証必須の有料コンテンツを含むプラットフォームであり、著作権について の注意書きが明記されている。本スキルはユーザー自身が正規に受講権限を持つコースの個人学習目的(Anki個人 利用)でのみ使用する前提とする。収集した問題文・解説の実例をスキル本文・コミットメッセージ・会話記録に 引用しない。
詳細な導線・実行方法・出力フォーマット・トラブルシュートは INSTRUCTIONS.md を参照。
tools
FastAPI (Python) web API development guide covering fundamentals (routing, path/query params, Pydantic models, request/response, error handling), data persistence (SQLAlchemy, SQLModel, async DB, MongoDB, CRUD, Alembic migrations), dependency injection (Depends, dependency_overrides, scopes/lifespan), auth & security (OAuth2, JWT, CORS), async & concurrency (async/await, Starlette, BackgroundTasks, WebSocket, SSE/streaming), testing (TestClient, pytest, httpx, mocking), production deployment & scaling (uvicorn/gunicorn, Docker, optimization), generative-AI services (model serving, streaming, concurrency), and microservice/GraphQL/OpenAPI patterns. MUST load when fastapi is in pyproject.toml/requirements.txt or .py files import fastapi. For Python language/tooling fundamentals (uv/ruff/mypy, packaging, non-FastAPI patterns), use lang:developing-python. For REST/HTTP-spec design, versioning, and API test strategy, use developing-web-apis. For Node.js/Fastify backend services, use building-nodejs-services.
development
Whizlabs のコース practice test 一覧URLから、配下の全クイズ(Free Test・Practice Test 1〜N 等)を practice mode で巡回し、各問題(問題文・選択肢・正解・解説・参考資料)を取得して 1 クイズ 1 JSON ファイルに 保存する。出力は creating-flashcards スキルへ渡してクイズごとに Anki フラッシュカード化できる。 Use when Whizlabs のコースURL(/learn/course/<slug>/<course-id>/pt 形式)を渡され 「問題を全部保存したい」「Anki カードにしたい」等と言われたとき。 補足トリガー: whizlabs, ホイズラボ, 資格試験, 問題集, practice test, quiz 収集, JSON 保存, Anki 連携。 ブラウザ操作自体の汎用ガイドは web:automating-browser、E2E テストは web:testing-e2e-with-playwright を使う。 本スキルは Whizlabs 専用の収集ワークフロー + bundled script(scripts/collect-whizlabs.sh)+ ログイン認証(agent-browser Auth Vault)を提供する。
development
Guides production Flutter app development with Dart targeting iOS, Android, web, and desktop from a single codebase, including project setup, the widget system (Stateless/Stateful, Material and Cupertino), layout, theming and animation, state management (setState, Provider, Riverpod, BLoC/Cubit, Redux, GetX), navigation and routing (Navigator, go_router, auto_route), networking and backends (http, dio, REST, Firebase, GraphQL), local persistence, responsive multi-platform design, architecture patterns (Clean Architecture, BLoC, MVVM), the pub.dev package ecosystem, widget and integration testing, performance optimization, and build and store release. REQUIRED when creating, implementing, modifying, testing, or shipping a Flutter app, or when pubspec.yaml lists the flutter SDK. For the Dart language itself (types, null safety, OOP, async, collections), use developing-dart. For native iOS/iPadOS apps in Swift/SwiftUI, use developing-ios-apps. For Apple HIG UI/UX decisions, use applying-apple-hig.
tools
Guides modern Dart language development, including the type system, null safety, variables, collections (List/Set/Map, Iterable, where/map/reduce), functions and functional programming (closures, higher-order functions, composition, Future/Stream), object-oriented programming (classes, constructors, inheritance, abstract classes, mixins, encapsulation, generics, enums, extension methods, operator overloading), asynchronous programming (async/await, isolates), error handling and debugging, the Dart test package, pub package management, CLI and web runtimes, and tooling (Dart SDK, DartPad, analyzer, formatter). REQUIRED when writing, reviewing, or modifying Dart code, or when pubspec.yaml or .dart files are present. For building Flutter UIs, widgets, state management, navigation, or shipping cross-platform apps, use developing-flutter-apps. For native iOS/iPadOS apps in Swift/SwiftUI, use developing-ios-apps instead.