Agent skill

Update Software Dependencies

by ArduPilot in ArduPilot/MethodicConfigurator

Add or update software dependencies following the REUSE compliance workflow.

GPL-3.0Auto-check passedLegal & Compliance

Install Update Software Dependencies

skills CLI
$ npx skills add ArduPilot/MethodicConfigurator --skill update-software-dependencies -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ArduPilot/MethodicConfigurator update-software-dependencies --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ArduPilot/MethodicConfigurator.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/update-software-dependencies .claude/skills/update-software-dependencies && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
update-software-dependencies
GitHub stars
163
Token cost
~1.8k tokens
SKILL.md length
634 words
Files
1
Skills in repo
11
Repo updated
First seen
Licence
GPL-3.0

At a glance

Add or update software dependencies following the REUSE compliance workflow.

  • Works in 7 steps: Add the dependency to pyproject.toml → Update credits/CREDITS.md → Update credits/update_credits_licenses.py → …
  • Adding packages to pyproject.toml
  • SKILL.md covers Overview, Step 1 — Add the dependency to…, Step 2 — Update… and Step 3 — Update…, plus 5 more sections
  • Calls python; reaches github.com and raw.githubusercontent.com

What it does

Update Software Dependencies is an agent skill from ArduPilot/MethodicConfigurator. Add or update software dependencies following the REUSE compliance workflow. Use when adding packages to pyproject.toml, updating credits/CREDITS.md, running credits/updatecreditslicenses.py to download license files, adding REUSE.toml annotations, and verifying reuse lint and pre-commit hooks pass.

Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Legal & Compliance. The repository describes itself as: A clear ArduPilot configuration sequence. The licence is GPL-3.0.

When your agent uses it

  • Adding packages to pyproject.toml
  • Updating credits/CREDITS.md
  • Running credits/updatecreditslicenses.py to download license files
  • Adding REUSE.toml annotations

Example prompts

  • “/update-software-dependencies”

Requirements

  • Python 3

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Add the dependency to pyproject.toml
  2. Update credits/CREDITS.md
  3. Update credits/update_credits_licenses.py
  4. Run the download script
  5. Add entries to REUSE.toml
  6. Verify REUSE compliance
  7. Run pre-commit checks

What it can do on your machine

Read from SKILL.md and the folder at commit 1a6392c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com
    • raw.githubusercontent.com
    • mozilla.org

    Also links to:

    • spdx.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Update Software Dependencies loads about 1.8k tokens when it runs. Until then it costs about 83 tokens; SKILL.md has 634 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~83
When it runs · the whole SKILL.md, loaded when a task matches
~1.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from ArduPilot/MethodicConfigurator at commit 1a6392c, republished under its GPL-3.0 licence (© ArduPilot). 634 words, ~1,784 tokens.

Download SKILL.mdSave it as .claude/skills/update-software-dependencies/SKILL.md (or your agent's skills folder).
name
update-software-dependencies
description
Add or update software dependencies following the REUSE compliance workflow. Use when adding packages to pyproject.toml, updating credits/CREDITS.md, running credits/update_credits_licenses.py to download license files, adding REUSE.toml annotations, and verifying reuse lint and pre-commit hooks pass.
<!--
SPDX-FileCopyrightText: 2024-2026 Amilcar do Carmo Lucas <amilcar.lucas@iav.de>

SPDX-License-Identifier: GPL-3.0-or-later
-->

Adding or Updating Software Dependencies

This document describes the full workflow for adding a new dependency or updating an existing one in the ArduPilot Methodic Configurator project. It is intended for both human contributors and AI agents.

All steps must be completed in order for the project to remain REUSE-compliant and its dependency credits to stay accurate and up to date.

Overview

text
pyproject.toml  →  credits/CREDITS.md  →  credits/update_credits_licenses.py
    →  run script to download license files  →  REUSE.toml

Step 1 — Add the dependency to pyproject.toml

Add the package to the appropriate section of pyproject.toml:

  • Runtime dependency → [project] dependencies
  • Development tooling → [project.optional-dependencies] dev
  • CI-only → [project.optional-dependencies] ci_headless_tests

Pin the exact version (use ==). For packages sensitive to the Python runtime version, use environment markers (e.g., python_version < '3.10').


Step 2 — Update credits/CREDITS.md

Add a row to the appropriate table in credits/CREDITS.md:

  • Direct runtime or GUI dependencies → "It directly uses:" table
  • Indirect (transitive) dependencies → "It indirectly uses:" table

Each row must have:

ColumnContent
SoftwareMarkdown link to project homepage
LicenseMarkdown link to the license URL on the project's repository

The author name (e.g., "by Mark Pointing") must be included in the Software column whenever it is known and the dependency is from an individual contributor rather than an organisation.

Example row for a direct dependency:

markdown
| [simpleeval](https://github.com/danthedeckie/simpleeval) | [MIT License](https://github.com/danthedeckie/simpleeval/blob/main/LICENCE) |

Step 3 — Update credits/update_credits_licenses.py

Add the new package to the correct list in credits/update_credits_licenses.py:

  • direct_dependencies — for packages listed in the direct-use table
  • indirect_dependencies — for packages listed in the indirect-use table

Each entry is a dict with two keys:

python
{"name": "<PackageName>", "license_url": "<raw-URL-to-license-file>"}

Rules for the URL:

  • Use a raw URL that serves the plain-text license (e.g., https://raw.githubusercontent.com/...)
  • The filename at the end of the URL determines the downloaded file's suffix (e.g., …/main/LICENCE → <PackageName>-LICENCE)
  • For packages hosted on Mozilla's site (MPL-2.0) provide https://mozilla.org/MPL/2.0/ and the download function will use a fixed HTML filename automatically (see Scrollable_TK_frame, Python_Tkinter_ComboBox)

Step 4 — Run the download script

Execute the script from the credits/ directory. It reads both lists and downloads each license file:

bash
cd credits
python update_credits_licenses.py

The script saves each file as <PackageName>-<license-filename> in the current directory. Check the output log to confirm all downloads succeeded. Re-run if any fail due to network errors.


Step 5 — Add entries to REUSE.toml

For each newly downloaded license file, append an [[annotations]] block to REUSE.toml with the correct path, copyright notice, and SPDX license identifier.

Show full SKILL.md (268 more words)Show less
  1. Open the downloaded license file (e.g., credits/simpleeval-LICENCE).
  2. Look for a line starting with Copyright or © at the top.
  3. If the license file contains no copyright notice, use the project author name from the corresponding entry in credits/CREDITS.md or the package's repository.
Choosing the SPDX identifier

Use the canonical SPDX license list. Common mappings:

License text saysSPDX-License-Identifier
MIT LicenseMIT
Apache License, Version 2.0Apache-2.0
BSD 2-ClauseBSD-2-Clause
BSD 3-ClauseBSD-3-Clause
Mozilla Public License 2.0MPL-2.0
GNU General Public License v3GPL-3.0-or-later
GNU Lesser GPL v3LGPL-3.0-or-later
Python Software Foundation LicensePSF-2.0
MIT-CMU License (Pillow)MIT-CMU

If no standard SPDX identifier exists (e.g., Inno Setup proprietary license), use a LicenseRef- identifier (e.g., LicenseRef-Inno-Setup) and place the license text in LICENSES/LicenseRef-Inno-Setup.txt.

Example REUSE.toml block
toml
[[annotations]]
path = "credits/simpleeval-LICENCE"
SPDX-FileCopyrightText = "Copyright (c) 2013 Daniel Fairhead"
SPDX-License-Identifier = "MIT"

For files that have no copyright notice at all (e.g., the Apache 2.0 generic license text at argparse_check_range-LICENSE-2.0), credit the known package author:

toml
[[annotations]]
path = "credits/argparse_check_range-LICENSE-2.0"
SPDX-FileCopyrightText = "Dmitriy Kovalev"
SPDX-License-Identifier = "Apache-2.0"

Step 6 — Verify REUSE compliance

bash
reuse lint

All reported errors must be resolved before committing. Common errors and fixes:

ErrorFix
credits/<file>: no license identifierAdd the SPDX-License-Identifier to the REUSE.toml annotation
credits/<file>: no copyright noticeAdd SPDX-FileCopyrightText to the REUSE.toml annotation
Missing license file LICENSES/<ID>.txtAdd the license text to LICENSES/ when using LicenseRef- IDs

Step 7 — Run pre-commit checks

bash
pre-commit run --all

All hooks must pass (ruff, pylint, mypy, reuse, etc.) before pushing.


Summary checklist

  • pyproject.toml — dependency added with pinned version
  • credits/CREDITS.md — row added to the correct table
  • credits/update_credits_licenses.py — entry added to the correct list
  • License file downloaded (cd credits && python update_credits_licenses.py)
  • REUSE.toml — [[annotations]] block added for each new license file
  • reuse lint passes
  • pre-commit run --all passes

© ArduPilot, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .github/skills/update-software-dependencies of ArduPilot/MethodicConfigurator.

Open the folder on GitHubat commit 1a6392c

Compare with similar skills

Update Software Dependencies next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Update Software Dependencies compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Update Software Dependencies this skillArduPilot/MethodicConfigurator163—~1.8kAutomated safety check: PassGPL-3.0
Paper to Chinese Patent DrafterYuan1z0825/nature-skills46k1 repos~1.1kAutomated safety check: PassApache-2.0
C15tc15t/c15t1.9k1 repos~1.6kAutomated safety check: PassApache-2.0
Contract Reviewevolsb/claude-legal-skill4611 repos~3.6kAutomated safety check: PassMIT
Legal Clinic Client Intakeanthropics/claude-for-legal9.6k3 repos~3.2kAutomated safety check: PassApache-2.0
Paper To Cn Patentsnipp-zha/Paper-to-patent-Skill1051 repos~959Automated safety check: PassNone

Similar skills

  • Paper to Chinese Patent Drafter

    Yuan1z0825/nature-skills

    Drafts Chinese invention patent applications and technical disclosures from research papers or inventor materials, tying each claim feature to source evidence.

    46k GitHub starsUsed in 1 repo~1.1k tokens
    Legal & ComplianceAuto-check passed
  • C15t

    c15t/c15t

    Work with c15t consent management docs, APIs, and integrations for Next.js, React, and JavaScript.

    1.9k GitHub starsUsed in 1 repo~1.6k tokens
    Legal & ComplianceAuto-check passed
  • Contract Review

    evolsb/claude-legal-skill

    Review legal contracts, NDAs, employment agreements, SaaS terms, and M&A documents.

    461 GitHub starsUsed in 1 repo~3.6k tokens
    Legal & ComplianceAuto-check passed
  • Legal Clinic Client Intake

    anthropics/claude-for-legal

    Official

    Structures a legal clinic client intake interview and produces a case summary with cross-area issue spotting, conflict flags and triage classification.

    9.6k GitHub starsUsed in 3 repos~3.2k tokens
    Legal & ComplianceAuto-check passed
  • Paper To Cn Patent

    snipp-zha/Paper-to-patent-Skill

    Convert scientific papers, theses, technical reports, source code, figures, or research manuscripts into evidence-grounded Chinese invention patent drafts.

    105 GitHub starsUsed in 1 repo~959 tokens
    Legal & ComplianceAuto-check passed
  • Commercial Legal Pl

    apiotrowski-afk/commercial-legal-pl

    Skill do analizy i tworzenia umów według polskiego prawa, ze szczególnym uwzględnieniem umów B2B, IP i IT (body leasing, NDA, wdrożenia, SaaS, przeniesienie praw autorskich, ugody).

    176 GitHub starsUsed in 1 repo~4.1k tokens
    Legal & ComplianceAuto-check passed

More from ArduPilot/MethodicConfigurator

All 11 skills in this repo
  • Update Gui Translations

    ArduPilot/MethodicConfigurator

    Update existing GUI translations using AI assistance. An agent skill from ArduPilot/MethodicConfigurator.

    163 GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed
  • Add UI Translation

    ArduPilot/MethodicConfigurator

    Add a new translation language to the application. An agent skill from ArduPilot/MethodicConfigurator.

    163 GitHub stars~1.8k tokensUpdated yesterday
    Auto-check passed
  • Architecture Validation

    ArduPilot/MethodicConfigurator

    Validate and update ARCHITECTUREn.md files against actual source code implementation.

    163 GitHub stars~3.8k tokensUpdated yesterday
    Auto-check passed
  • Codebase Analysis

    ArduPilot/MethodicConfigurator

    Analyze the codebase structure and count lines of code by category using cloc.

    163 GitHub stars~2.2k tokensUpdated yesterday
    Auto-check: notes
  • Configuration Steps Reorder

    ArduPilot/MethodicConfigurator

    Add, delete, or re-order configuration steps in configurationsteps.json.

    163 GitHub stars~1.3k tokensUpdated yesterday
    Auto-check passed
  • Pytest Testing

    ArduPilot/MethodicConfigurator

    Write high-quality BDD pytest tests for the ArduPilot Methodic Configurator.

    163 GitHub stars~3.5k tokensUpdated yesterday
    Auto-check passed

Questions about Update Software Dependencies

What does Update Software Dependencies do?

Add or update software dependencies following the REUSE compliance workflow. Update Software Dependencies is an agent skill from ArduPilot/MethodicConfigurator. Add or update software dependencies following the REUSE compliance workflow.

When should I use Update Software Dependencies?

Update Software Dependencies fits situations like: adding packages to pyproject.toml; updating credits/CREDITS.md; running credits/updatecreditslicenses.py to download license files; adding REUSE.toml annotations.

How do I install Update Software Dependencies in Claude Code?

Run `npx skills add ArduPilot/MethodicConfigurator --skill update-software-dependencies -a claude-code`. Or copy the skill folder (.github/skills/update-software-dependencies in ArduPilot/MethodicConfigurator) into .claude/skills/update-software-dependencies in your project. Claude Code loads it when a task matches its description.

How do I install Update Software Dependencies in Codex?

Run `npx skills add ArduPilot/MethodicConfigurator --skill update-software-dependencies -a codex`. Or copy the skill folder (.github/skills/update-software-dependencies in ArduPilot/MethodicConfigurator) into .agents/skills/update-software-dependencies in your project. Codex loads it when a task matches its description.

Can I use Update Software Dependencies in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ArduPilot/MethodicConfigurator --skill update-software-dependencies -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/update-software-dependencies, .gemini/skills/update-software-dependencies, .github/skills/update-software-dependencies and .opencode/skills/update-software-dependencies in your project.

What does Update Software Dependencies need to run?

Going by SKILL.md and its folder, Update Software Dependencies needs the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Update Software Dependencies access the network?

SKILL.md names 4 domains. In commands or code: github.com, raw.githubusercontent.com and mozilla.org; the agent is likely to contact these when it follows the instructions. As links in the text: spdx.org. This is read from the text; nothing was executed.

Is Update Software Dependencies safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Update Software Dependencies use?

Update Software Dependencies is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Update Software Dependencies use?

About 1.8k tokens (SKILL.md is roughly 7.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Update Software Dependencies?

Skills that share tags, products or a category with Update Software Dependencies: Paper to Chinese Patent Drafter (Yuan1z0825/nature-skills, 46k stars), C15t (c15t/c15t, 1.9k stars), Contract Review (evolsb/claude-legal-skill, 461 stars) and Legal Clinic Client Intake (anthropics/claude-for-legal, 9.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Update Software Dependencies?

ArduPilot (a GitHub organization) maintains it in ArduPilot/MethodicConfigurator, which has 163 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on October 6, 2026.

Source: ArduPilot/MethodicConfigurator on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.