Przejdź do treści
Biblioteka skilli
Programowanie · Budowanie i kod

init-pixi-project

/init-pixi-project

Inicjalizuje nowy projekt Pythona zarządzany przez Pixi albo aktualizuje istniejący, pytając o potwierdzenie przed scaleniem.

Repozytorium
magic-context ↗
Licencja
MIT
Ostatnia zmiana repozytorium
11.05.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
3
Skrypty
1
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 11.05.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co sprawdzić przed instalacją
  • 1 skrypt w paczce. Przejrzyj je przed instalacją, bo Claude może je uruchomić.

Skrypty: scripts/scaffold_structure.py

Co robi i kiedy

Inicjalizuje nowy projekt Pythona zarządzany przez Pixi albo aktualizuje istniejący, pytając o potwierdzenie przed scaleniem.

Wyzwalacze z opisu

initinitializesetuppixi
Oryginalny opis (EN)

Initialize and scaffold a new Pixi-managed Python project, or upgrade an existing one. Use when the user explicitly mentions "init", "initialize", or "setup" in conjunction with "pixi". Handles existing projects by prompting for confirmation before merging.

Jak działa

  1. References
  2. Workflow
Sekcje z nagłówków SKILL.md, w oryginale · 72 linii, 412 słów
Podgląd SKILL.md
---
name: init-pixi-project
description: Initialize and scaffold a new Pixi-managed Python project, or upgrade an existing one. Use when the user explicitly mentions "init", "initialize", or "setup" in conjunction with "pixi". Handles existing projects by prompting for confirmation before merging.
---

# Initialize Pixi Project

## References
- **Usage & Commands**: See [references/pixi-usage.md](references/pixi-usage.md) for details on `pixi search`, `add`, and `run`.

## Workflow

### 1. Safety Check & Parameters

1.  **Check for Existing Artifacts**: Look for `pixi.lock`, `pixi.toml`, or a `pyproject.toml` containing `[tool.pixi]`.
2.  **Prompt if Exists**: If any of these exist, **PAUSE and ASK** the user:
    > "Existing Pixi configuration detected. Proceeding will scaffold the directory structure and attempt to merge standard dependencies (scipy, ruff, etc.) into the current environment. This might affect existing functionality. Do you want to proceed?"
3.  **Abort if Rejected**: If the user declines, stop.
4.  **Determine Parameters** (if proceeding):
    - **Format**: Default to `pyproject` unless user specifies otherwise.
    - **Python Version**: Target one minor version behind latest stable (e.g., 3.12).

### 2. Initialization (Merge/Create)

Attempt to initialize Pixi.

- **Run**: `pixi init [PATH] --format [pyproject|pixi] -c conda-forge`
- **Handle Existing**:
    - If the command fails because the project is already initialized, verify that `[tool.pixi]` exists in the manifest.
    - If it exists, skip to the next step.
    - If `pyproject.toml` exists but lacks Pixi config, the agent should try to append the default Pixi configuration or ask the user if `pixi init` didn't do it automatically.

### 3. Post-Initialization Configuration

#### A. Handle Custom Project Name
If the user specified a project name different from the current directory name:
1.  **Rename Source**: `mv src/<dir_name> src/<project_name>`
2.  **Update Manifest**: Edit `pyproject.toml` to replace the old name with the new one in:
    - `[project] name = "..."`
    - `[tool.pixi.pypi-dependencies]` section (rename the key).

#### B. Scaffolding (Idempotent)
Run the scaffolding script. Pass the project name if custom.

```bash
python <path_to_skill>/scripts/scaffold_structure.py [PATH] --package-name <project_name>
```

#### C. Gitignore
Check `.gitignore`. Append the following if not present:
```gitignore
.pixi/
tmp/
.git/
```

#### D. Install Python and Dependencies (Smart Merge)

1.  **Check Python**: Check if `python` is already a dependency.
    - If yes, respect the existing version (or ask user if they want to override).
    - If no, add it: `pixi add python=<version>`
2.  **Add Standard Packages**:
    - Attempt to add the standard stack:
      ```bash
      pixi add --pypi scipy mdutils ruff mkdocs-material mypy attrs omegaconf imageio
      ```
    - **Conflict Handling**: If `pixi add` fails due to conflicts with existing packages, try to resolve by:
        - Installing the non-conflicting subset.
        - Reporting specific conflicts to the user and asking for guidance.
3.  **Finalize**: Run `pixi install`.

### 4. Verification

- Verify the environment is usable (`pixi shell` works).
- Verify directory structure.
Pliki w paczce (3)
  • SKILL.md 3 KB
  • references/pixi-usage.md 2 KB
  • scripts/scaffold_structure.py 5 KB

Wersje

W bazie nie ma innych skilli o nazwie init-pixi-project.

Migawka bazy z 28.10.2026 · wersja paczki ddd2360a5ec8 (skrót SHA-256 całej paczki)

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 84init
    Zakłada nowy projekt ze standardową strukturą katalogów, plikami szablonowymi i repozytorium git.
  • 100new-modular-project
    Zakłada nowy projekt Mojo lub MAX, w tym środowisko pixi albo uv.
  • 100pixijs-migration-v8
    Prowadzi migrację z PixiJS v7 do v8 i diagnozuje zepsuty kod po aktualizacji: async app.init, jeden pakiet pixi.js, Graphics kształt-potem-wypełnienie, BaseTexture na TextureSource, shadery i zdarzenia.
  • 100pixi-environment-builder
    Pomaga tworzyć, migrować i naprawiać środowiska pixi dla naukowego Pythona, bioinformatyki, CUDA i PyTorch, kerneli Jupyter oraz mieszanych zależności conda i PyPI.
  • 90init
    Inicjalizuje projekt Cladding z pomysłu, dokumentu planowania lub istniejącego projektu, gdy użytkownik o to prosi.
  • 92init-project
    Pomaga przygotować nowy lub istniejący projekt do pracy wspomaganej AI.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.