搜索

PythonReactSEOPDF
GitHub Skill

openapi-toolkit-open-responses-dart

Automates updating open_responses_dart when OpenResponses OpenAPI spec changes. Fetches latest spec, compares against current, generates changelogs and prioritized implementation plans. Use for: (1) Checking for API updates, (2) Generating implementation plans for spec changes, (3) Creating new models/endpoints from spec, (4) Syncing local spec with upstream. Triggers: "update api", "sync openapi", "new endpoints", "api changes", "check for updates", "update spec", "api version", "fetch spec", "compare spec", "what changed in the api", "implementation plan".

davidmigloz☆ 3 仓库 Stars0 仓库 Forks

安装与使用

请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。

查看来源 ↗使用指南

技能说明

OpenAPI Toolkit (open_responses_dart)

Uses shared scripts from openapi-toolkit with open_responses_dart-specific configuration.

Prerequisites

  • Working directory: Repository root
  • Python 3
  • No API key required to fetch spec (it's public)
  • For integration tests: OPENAI_API_KEY environment variable

Spec Registry

Spec Description Auth Required
main OpenResponses unified LLM API No

Workflow

1. Fetch Latest Spec
python3 .claude/shared/openapi-toolkit/scripts/fetch_spec.py \
  --config-dir .claude/skills/openapi-toolkit-open-responses-dart/config

Output: /tmp/openapi-toolkit-open-responses-dart/latest-main.json

2. Analyze Changes
python3 .claude/shared/openapi-toolkit/scripts/analyze_changes.py \
  --config-dir .claude/skills/openapi-toolkit-open-responses-dart/config \
  packages/open_responses_dart/specs/openapi.json \
  /tmp/openapi-toolkit-open-responses-dart/latest-main.json \
  --format all \
  --changelog-out /tmp/openapi-toolkit-open-responses-dart/changelog.md \
  --plan-out /tmp/openapi-toolkit-open-responses-dart/plan.md

Generates:

  • changelog.md - Human-readable change summary
  • plan.md - Prioritized implementation plan (P0-P4)
3. Implement Changes

Before implementing, read references/implementation-patterns.md for:

  • Model class structure and conventions
  • Sealed class patterns for polymorphic types
  • Streaming event handling
  • JSON serialization patterns

Use templates from ../../shared/openapi-toolkit/assets/.

3.5 Update Documentation (MANDATORY)

Before running the review checklist, update all documentation:

  1. README.md - Add/update new features
  2. example/ - Create/update example files
  3. CHANGELOG.md - Add entry for new features/changes
4. Review & Validate (MANDATORY)

Perform the multi-pass review documented in references/REVIEW_CHECKLIST.md:

# Pass 2: Barrel file verification
python3 .claude/shared/openapi-toolkit/scripts/verify_exports.py \
  --config-dir .claude/skills/openapi-toolkit-open-responses-dart/config

# Pass 3: Documentation completeness
python3 .claude/shared/openapi-toolkit/scripts/verify_readme.py \
  --config-dir .claude/skills/openapi-toolkit-open-responses-dart/config
python3 .claude/shared/openapi-toolkit/scripts/verify_examples.py \
  --config-dir .claude/skills/openapi-toolkit-open-responses-dart/config

# Pass 4: Property-level verification
python3 .claude/shared/openapi-toolkit/scripts/verify_model_properties.py \
  --config-dir .claude/skills/openapi-toolkit-open-responses-dart/config

# Dart quality checks
cd packages/open_responses_dart && dart analyze --fatal-infos && dart format --set-exit-if-changed . && mcp__dart__run_tests()
5. Finalize
# Copy fetched spec to persisted location
cp /tmp/openapi-toolkit-open-responses-dart/latest-main.json packages/open_responses_dart/specs/openapi.json

Package-Specific References

External References

Specification
Provider Documentation

Troubleshooting

  • Network errors: Check connectivity; retry after a few seconds
  • No changes detected: Summary shows all zeros; no action needed
  • Integration test failures: Set OPENAI_API_KEY environment variable

使用示例

查看来源仓库中的使用示例与配置说明。

查看来源 ↗

来源历史

收录时间
2026-01-20
索引更新时间
2026-02-04
Branch
main

收录与同步日期属于本站记录。源码修改历史请查看来源仓库。

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!