agentsclimarketplace

Dev soft agent

Skill ellmos-ai/skills/skills/dev/dev-soft-agent

Portable SKILL.md library for Claude Code, Codex-compatible agents, BACH, and local-first LLM workflows

Install
npx -y skills add ellmos-ai/skills --skill dev-soft-agent

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Automatisierte Software-Entwicklungspipeline. Scannt Projekte, priorisiert Tasks, analysiert Code und orchestriert Entwicklungsschleifen. Zero Dependencies (nur Python stdlib).

SKILL.md

4.1 KB, as published. Nobody here has run it

<img src="banner.png" width="100%" alt="dev-soft-agent banner">

Dev Soft Agent

Automatisierte Software-Entwicklungspipeline. Extrahiert aus BACHs ATI-Agent, laeuft vollstaendig standalone mit reiner Python-Standardbibliothek.

Komponenten

scripts/
  config.py              Konfiguration (Scan-Ordner, Naming-Prefixes, Gewichte)
  project_manager.py     Projekt-Scan + Klassifizierung nach Naming-Konvention
  task_engine.py          AUFGABEN.txt Parser + Code-Scanner (TODO/FIXME)
  code_analyzer.py       Statische Analyse (LOC, Imports, Klassen, Funktionen)
  dev_loop.py            Orchestrator (DevLoop)
  policies/
    naming.py            snake_case / PascalCase / SCREAMING_SNAKE Pruefung
    encoding.py          UTF-8 Enforcement + BOM Detection
    paths.py             Hardcoded-Path-Erkennung
  prompt_templates/
    task_prompt.txt      LLM-Prompt fuer Task-Bearbeitung
    review_prompt.txt    LLM-Prompt fuer Code-Review
    analysis_prompt.txt  LLM-Prompt fuer Projekt-Analyse

Nutzung als Python-Library

from scripts.dev_loop import DevLoop
from scripts.config import Config

config = Config()
loop = DevLoop(config)

# Projekte scannen
projects = loop.scan_projects()

# Projekt auswaehlen (gewichtete Zufallsauswahl nach Naming-Konvention)
project = loop.select_project()

# Code analysieren
analysis = loop.analyze_project()
print(f"{analysis.total_loc} LOC, {analysis.todo_count} TODOs")

# Tasks laden und priorisieren
tasks = loop.get_tasks()
for task in tasks:
    print(f"[{task.task_type.name}] {task.description} (Prio: {task.priority})")

# Komplette Dev-Session
result = loop.run_session()
loop.save_session()

Nutzung als CLI

cd scripts
python -m devSoftAgent scan ~/projects
python -m devSoftAgent select
python -m devSoftAgent analyze /pfad/zum/projekt
python -m devSoftAgent tasks /pfad/zum/projekt
python -m devSoftAgent session --project mein-projekt
python -m devSoftAgent status

Naming-Konvention (Projekt-Klassifizierung)

Projekte werden anhand ihres Ordnernamens klassifiziert:

PrefixLabelGewichtBedeutung
RDYReady1.0Hoechste Prioritaet
RDY_FASTFast Ready0.5Schnell erledigbar
FASTFast0.33Kleine Aufgabe
DEVDevelopment0.17In Entwicklung
RELReleased0.0Fertig, keine Arbeit
ARCArchived0.0Archiviert

Gewicht bestimmt die Wahrscheinlichkeit bei zufaelliger Auswahl.

AUFGABEN.txt Format

# AUFGABEN - Projektname
# Stand: 2026-03-12

## OFFEN
- [ ] [BUG] Beschreibung des Fehlers
- [ ] [FEATURE] Neues Feature

## IN ARBEIT
- [-] [REFACTOR] Code-Umbau

## ERLEDIGT
- [x] [BUG] Behobener Fehler -- DONE 2026-03-01

Policies

Qualitaets-Policies die automatisch gegen Code geprueft werden koennen:

  • NamingPolicy: snake_case fuer Module/Funktionen, PascalCase fuer Klassen
  • EncodingPolicy: UTF-8 erzwingen, BOM erkennen, CRLF markieren
  • PathPolicy: Hardcoded absolute Pfade erkennen und melden

Changelog

0.1.0 (2026-03-12)

  • Migration aus MODULAR_AGENTS/devSoftAgent in Skillbibliothek
  • Projekt-Scanner, Task-Engine, Code-Analyzer, DevLoop
  • 3 Policies (Naming, Encoding, Paths)
  • 3 Prompt-Templates (Task, Review, Analysis)

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.