Agent Native

managing-python-dependencies

This skill ensures the agent manages Python dependencies correctly by detecting the project's existing dependency manager and using the appropriate tool.

by GoogleOfficial publisher

Identity proven by GitHub's verified organisation badge (flutter, google)

Agents
Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode, claude.ai and API
License
Apache-2.0 (permissive)
Pin
0dd8034pinned Oct 9, 2026
Context cost
about 740 tokenswhen the skill loads
GitHub stars
215on googlecloudplatform/data-agent-kit-plugin
Scripts
None found

What it does

“Ensures proper Python dependency management, avoiding global `pip install` and adhering to project-specific tooling. Use this skill if any of the following are true: 1. Attempting to run `pip install {package_name}`. 2. Python packages or dependencies need to be added or modified. 3. Initiating a new Python project. 4. Creating a new notebook, even if just using BigQuery cells. 5. Generating Python code that includes `import` statements for third-party libraries. 6. Before executing Python scripts via the terminal to ensure the correct virtual environment is active.”
The author's description, from SKILL.md

Generated summary from the skill's own text

This skill ensures the agent manages Python dependencies correctly by detecting the project's existing dependency manager and using the appropriate tool. It prevents global pip installs and enforces project-specific dependency management through venv, Poetry, Pipenv, uv, or Conda depending on what configuration files exist.

When to use it

  • Adding or modifying Python packages in a project
  • Starting a new Python project or notebook
  • Before executing Python scripts requiring third-party imports
  • When pip install commands are needed

When not to

  • Project uses system-wide Python packages only
  • Managing dependencies outside Python ecosystems

Install

These commands install from the publisher's repository and need no account.

skills CLI

npx skills add googlecloudplatform/data-agent-kit-plugin --skill managing-python-dependencies

Installs from the repository's default branch, which may have changed since the commit we checked.

GitHub CLI 2.90 or later

gh skill install googlecloudplatform/data-agent-kit-plugin managing-python-dependencies@0dd8034c50d6bce0290b99190cd44b06fcbec2c1

Installs the commit we checked (0dd8034).

Copy by hand

Download the folder at 0dd8034 and put it in .claude/skills/managing-python-dependencies for Claude Code and in .agents/skills/managing-python-dependencies for Codex, Cursor, Gemini CLI, GitHub Copilot and OpenCode.

Skill folder on GitHub at 0dd8034

Claude Code plugin

/plugin install chrome-devtools-mcp@claude-plugins-official

The publisher's plugin in Claude's official marketplace. It may hold more than this skill, and we have not pinned it.

Claude Code plugin

/plugin install alloydb-omni@claude-plugins-official

The publisher's plugin in Claude's official marketplace. It may hold more than this skill, and we have not pinned it.

Claude Code plugin

/plugin install bigquery-data-analytics@claude-plugins-official

The publisher's plugin in Claude's official marketplace. It may hold more than this skill, and we have not pinned it.

Copy for your agent

A prompt for any coding agent. It installs this skill from GitHub at the pinned commit, copies the files as they are, and runs nothing unless you ask.

Prompt

Install the agent skill "managing-python-dependencies" by Google.

Source, pinned to commit 0dd8034c50d6bce0290b99190cd44b06fcbec2c1:
https://github.com/googlecloudplatform/data-agent-kit-plugin/tree/0dd8034c50d6bce0290b99190cd44b06fcbec2c1/skills/managing-python-dependencies

1. Download that folder at exactly this commit. Do not use the default branch.
2. Copy every file unchanged, keeping the folder structure, into .claude/skills/managing-python-dependencies/ for Claude Code and .agents/skills/managing-python-dependencies/ for Codex, Cursor, Gemini CLI, GitHub Copilot and OpenCode. Create the folders if they do not exist.
3. Do not edit the files, and do not run any script in the folder unless I ask you to.
4. When you are done, list the files you copied and where you put them.

Listing and checks: https://www.agentnative.dev/skills/google/managing-python-dependencies

SKILL.md at the pin

---
name: managing-python-dependencies
description: |
  Ensures proper Python dependency management, avoiding global `pip install` and
  adhering to project-specific tooling.

  Use this skill if any of the following are true:
    1. Attempting to run `pip install {package_name}`.
    2. Python packages or dependencies need to be added or modified.
    3. Initiating a new Python project.
    4. Creating a new notebook, even if just using BigQuery cells.
    5. Generating Python code that includes `import` statements for third-party libraries.
    6. Before executing Python scripts via the terminal to ensure the correct virtual environment is active.
license: Apache-2.0
metadata:
  version: v2
  publisher: google
---

# Python Dependency Management Rule

> [!CAUTION]
>
> **BEFORE any `pip install`**: You MUST first detect the project's existing
> dependency manager and use it correctly. Do NOT override the project's
> established tooling.

> [!NOTE]
>
> **Pre-Flight Environment Check Bundling**: You MUST NOT run multiple
> sequential 1-line shell check commands (e.g. separate commands for python
> version, pyspark version, auth check, pip list). Combine all pre-flight
> environment and package availability probes into a single composite python
> one-liner or shell check step.
>
> Example composite probe:
>
> ```bash
> python3 -c "import sys, importlib.util; print(f'Python {sys.version.split()[0]}'); [(print(f'{pkg}: {__import__(pkg).__version__}') if importlib.util.find_spec(pkg) else print(f'{pkg}: not found')) for pkg in ['pyspark', 'google.cloud.bigquery']]"
> ```
>
> This bundling also applies to dependency manager detection; use a single `ls`
> or `find` command to check for all potential dependency manager configuration
> and lock files at once (e.g. `ls uv.lock poetry.lock Pipfile.lock
> requirements.txt pyproject.toml`).

## Dependency Manager Detection

Before installing ANY Python package, check the workspace for these files **in
priority order**:

1.  **Signal:** `uv.lock` or `pyproject.toml` with `[tool.uv]`
    *   **Tool:** **uv**
    *   **Install:** `uv add <package>`
    *   **Setup:** `uv sync`
2.  **Signal:** `pyproject.toml` with `[tool.poetry]`
    *   **Tool:** **Poetry**
    *   **Install:** `poetry add <package>`
    *   **Setup:** `poetry install`
3.  **Signal:** `Pipfile`
    *   **Tool:** **Pipenv**
    *   **Install:** `pipenv install <package>`
    *   **Setup:** `pipenv install`
4.  **Signal:** `environment.yml`
    *   **Tool:** **Conda**
    *   **Install:** `conda install <package>`
    *   **Setup:** `conda env create -f environment.yml`
5.  **Signal:** `requirements.txt` only
    *   **Tool:** **venv + pip**
    *   **Install:** `.venv/bin/pip install <package>`
    *   **Setup:** `.venv/bin/pip install -r requirements.txt`
6.  **Signal:** None of the above
    *   **Tool:** **venv + pip** (default)
    *   **Install:** `.venv/bin/pip install <package>`
    *   **Setup:** `.venv/bin/pip install -r requirements.txt`

## Default: venv + pip

If no dependency manager is detected, use **venv + pip + requirements.txt** as
the default:

```bash
# Initialize environment
python3 -m venv .venv

# Add dependencies
.venv/bin/pip install <package>

# Preserve state
.venv/bin/pip freeze > requirements.txt
```

**Rules for venv + pip workflow:**

-   Always use `.venv/bin/pip` or `.venv/bin/python` (explicit path).
-   After installing, run: `.venv/bin/pip freeze > requirements.txt`.
-   When setting up: `.venv/bin/pip install -r requirements.txt`.

## Prohibited

-   **NEVER** run `pip install` globally
-   **NEVER** override an existing dependency manager with a different one

From googlecloudplatform/data-agent-kit-plugin at 0dd8034, shown as plain text under its license: Apache-2.0 (permissive). The license text is in skills/managing-python-dependencies/SKILL.md.

View SKILL.md on GitHub at 0dd8034

Files

1 file, 3.7 KB in total. Each file has a sha256 in the pin's manifest; the first 12 characters are shown.

Skill folder on GitHub at 0dd8034
All 50 skills from Google

More from Google

  • skill-creator

    This skill guides agents through creating new skills that extend Gemini CLI with specialized knowledge, workflows, and tool integrations.

    Contains scripts

    Gemini CLI · about 5K tokens · pinned 7 days ago

  • chrome-devtools-cli

    This skill enables agents to automate browser interactions and inspect web pages using Chrome DevTools via command-line interface.

    Claude Code, Codex, Cursor +4 · about 2.9K tokens · pinned 7 days ago

  • cloud-run-basics

    Deploys and manages Google Cloud Run services, jobs, and worker pools for running containerized applications or source code.

    Claude Code, Codex, Cursor +4 · about 3.9K tokens · pinned 7 days ago

  • retail-virtual-tryon

    Creates virtual try-on agents on Google Cloud using Gemini image models and Veo video generation, supporting static image try-ons and catwalk animations.

    Contains scripts

    Claude Code, Codex, Cursor +3 · about 3.3K tokens · pinned 7 days ago

  • site-md

    This skill analyzes project briefs and generates a .stitch/SITE.md constitution file that documents the project's identity, visual direction, architecture…

    Claude Code, Codex, Cursor +4 · about 730 tokens · pinned 7 days ago

  • stitch::code-to-design

    This skill converts existing frontend code (React, Vue, Angular, etc.) into a Stitch Design by extracting HTML, analyzing design systems, and uploading both…

    Claude Code, Codex, Cursor +4 · about 760 tokens · pinned 7 days ago

All Coding workflow skills
  • final-release-review

    Audits Python SDK release candidates or plans against the previous release, comparing diffs for regressions, API changes, and version compatibility.

    by OpenAIOfficial publisher

    Contains scripts

    Claude Code, Codex, Cursor +3 · about 5.4K tokens · pinned 7 days ago

  • n8n-code-nodes-official

    This skill guides agents to use n8n Code nodes correctly as a last resort.

    by n8nOfficial publisher

    Claude Code, Codex, Cursor +4 · about 2.9K tokens · pinned 7 days ago

  • migrating-airflow-2-to-3

    This skill guides agents through migrating Apache Airflow 2.x DAG code to Airflow 3.x, handling breaking changes in imports, operators, context variables, and…

    by AstronomerOfficial publisher

    Claude Code · about 2.1K tokens · pinned 7 days ago

  • run-experiment

    This skill sets up and executes Python-based experiments within a managed environment.

    by ImbueOfficial publisher

    Claude Code · about 910 tokens · pinned 7 days ago

  • practice-registry

    This skill checks Scala, Python, TypeScript, JavaScript, and Rust code against company-specific coding practices before generation, during editing, and before…

    by WriterOfficial publisher

    Claude Code, Codex, Cursor +4 · about 410 tokens · pinned 7 days ago

  • python-project

    Scaffolds production-grade Python projects with uv package management, pyproject.toml, src layout, Ruff linting, pytest testing, and optional CLI, API…

    by NebiusOfficial publisher

    Contains scripts

    Claude Code, Codex, Cursor +3 · about 3.4K tokens · pinned 7 days ago

Open roles at Google

No open roles at Google on the Agent Native jobs board right now.

Browse the jobs board

The skills listed here are third-party software, collected from public GitHub repositories as a catalog of recent skills and provided as is. Agent Native does not write or control them and is not responsible for any harm, loss or damage caused by installing or using them. Labels and checks describe what we saw at one commit and are not a guarantee. Read a skill's files before you run it. Terms of use