Skip to content

rse/ase

Repository files navigation

ASE

ASE

github (author stars) github (author followers)
github (project license) github (project release)
github (project stars)

About

Agentic Software Engineering (ASE) is the opinionated Open Source companion toolkit of Dr. Ralf S. Engelschall for fusing the concept of Agentic AI Coding and traditional Software Engineering in the software development tool Anthropic Claude Code — and with reduced support also in the alternative tool GitHub Copilot CLI or OpenAI Codex CLI.

ASE ships with agent hooks, agent skills, an underlying Model-Context-Protocol (MCP) service and a Command-Line Interface (CLI), incorporating reasonable methodology and automation aspects, to support the recurring tasks of a Software Developer and Software Architect.

ASE is primarily motivated by the following statement of its primary author, Dr. Ralf S. Engelschall:

"Software developers in the industrial Software Engineering context, in their recurring tasks, should leverage pre-manufactured agentic AI skills to boost their daily productivity. Those skills incorporate reasonable methodology and automation aspects while keeping the developers in the driver's seat to ensure stable result quality."

Notices

Note

TERMINOLOGY: The discipline of Agentic Software Engineering in general is Software Engineering, supported by autonomous AI Agents to perform tasks across the software development lifecycle. This ASE product in particular is also agentic, but not strictly based on autonomous agents. Instead, ASE focuses on supporting the role of a Software Engineer with Agentic AI Coding Tools towards multi-step operations and a plan/task-driven approach, but still strongly focuses on Human-in-the-Loop.

Note

TOOL SUPPORT FOCUS: The primary focus of ASE is on the Agentic AI Coding tool Claude Code. The secondary focus is on the support for GitHub Copilot CLI (just set environment variable ASE_TOOL=copilot) and OpenAI Codex CLI (just set environment variable ASE_TOOL=codex). In the future, additional support could be provided also for alternative tools — if their agent harness features (especially hooks, interactive user dialog tool, etc.) realistically allow it.

Highlights

Check out the following scenarios and corresponding ASE examples to see whether ASE is right for you:

  • Boosted Sessions: You want to speed up your interactive sessions and at the same time reduce costs by reducing the number of produced LLM output tokens? → /ase-meta-persona engineer or even /ase-meta-persona caveman

  • Alternative Approach Funnel: You prefer a plan-driven approach, but the agent harness's Plan Mode is too unstructured and too direct because you want to leverage a funnel of alternative approaches first? → /ase-code-craft hello: "ase hello" CLI command which prints a nice "Hello World" in red

  • Named and Persisted Plans: You prefer a plan-driven approach, but the agent harness's Plan Mode is regularly too weak, because you want named, persisted, cross-session reachable, and strictly structured plans? → /ase-task-edit hello

  • Plan Stress-Testing: You have a task plan, but want to be relentlessly grilled about every essential aspect of it until you and the agent reach a shared understanding and no open decisions remain? → /ase-task-grill hello

  • Implementation Preflights: You prefer a plan-driven approach, but want to pre-flight the implementation without later having to rewind artifacts via the version control system or the agent harness's session history? → /ase-task-preflight hello

  • Project Insights: You want to get a quick insight into a project by determining the author, the source files with the most churn, and the module structure? → /ase-code-insight @tool

  • Code Comprehension: You want to better comprehend code by finding focused information on What, Why, Analogy, Diagram, Cruxes, and Gotchas? → /ase-code-explain @tool/src/*.ts

  • Lexical Code Analysis: You want to analyze code for potential problems related to a standard set of code quality aspects? → /ase-code-lint @tool/src/*.ts

  • Document Proofreading: You want your text documents checked and corrected for spelling, punctuation, and grammar errors? → /ase-docs-proofread @README.md

  • Research Quorum: You want to research a fact by asking multiple (potentially available) foreign LLMs and methodologically derive a quorum answer? → /ase-meta-quorum What is Agentic Software Engineering?

  • Logical Code Analysis: You want to analyze code for potential problems in its logic, semantics, and control flow? → /ase-code-analyze @tool/src/*.ts

  • Automated Change Logs: You want to get your CHANGELOG.md entries automatically derived from your recent Git commits? → /ase-meta-changelog

  • Plan Implementation: You have a named, persisted task plan and now want it implemented as a single, complete change set across your project artifacts? → /ase-task-implement hello

  • Artifact Reconciliation: You want one set of artifacts (e.g. CODE, DOCS) automatically aligned to reflect the current state of another set (e.g. SPEC, ARCH), one-way or bidirectionally? → /ase-sync-reconcile -s SPEC -t DOCS

  • Foreign Source Import: You want external files, URLs, or pasted text ingested and turned into structured SPEC, ARCH, CODE, DOCS, or TASK artifacts? → /ase-sync-import -t SPEC @requirements.txt

  • Artifact Export: You want artifact content materialized into derived, side-by-side files, like the Data Model rendered as an SVG diagram or the Technology Stack rendered as a Markdown table? → /ase-sync-export -s SPEC,ARCH

  • Direct Skill Usage Help: You want usage help for skills directly within your agent tool sessions? → /ase-xxx-xxx --help

  • Diff Summary: You want a raw Git diff turned into a concise, human-readable narrative of what changed and why, grouped by intent, and with optional intent-coherence check, risk grading and blast radius? → /ase-meta-diff -c -r -b

  • Change Review: You want the staged Git changes reviewed the way a human reviewer would on a pull request, with an approve/reject verdict and prioritized, severity-tagged, line-cited findings? → /ase-meta-review

  • Guided Bug Fixing: You want a problem or bug resolved through a structured, plan-driven funnel of candidate root causes and fix approaches instead of a direct, unstructured patch? → /ase-code-resolve the CLI crashes on an empty config file

  • Guided Refactoring: You want the code base refactored through a structured funnel of alternative refactoring approaches, optionally captured as a named, persisted task plan? → /ase-code-refactor extract the config loading into a dedicated module

  • Architecture Analysis: You want your software architecture reviewed for package cohesion and inter-package coupling to spot structural weak spots? → /ase-arch-analyze @tool/src

  • Collaborative Brainstorming: You want to figure out what to build before how, by diverging on a broad space of ideas and then converging through clustering and scoring into a recommended direction? → /ase-meta-brainstorm an offline-first sync layer for the mobile app

  • Root-Cause Analysis: You want to understand the reason for a fact with the help of the "Five-Whys" root-cause determination method? → /ase-meta-why is the Decibel (dB) unit a logarithmic one?

  • Devil's Advocate Challenge: You want a thesis or statement relentlessly challenged and criticised, and finally resolved into a balanced Hegelian synthesis? → /ase-meta-diaboli The Decibel (dB) is an intuitive unit.

  • Steelman Argument: You want a thesis or statement charitably strengthened with the strongest possible case, and finally consolidated into a fortification argument? → /ase-meta-steelman ASE is one of the best Anthropic Claude Code CLI add-ons.

  • Key Point Distillation: You want a document distilled into a flat, importance-ranked list of its key points, each with a salience rank, a rationale, and a verbatim line-cited evidence snippet? → /ase-docs-distill doc/architecture.md

  • Search Engine Consolidation: You want to query multiple (potentially available) search engines and derive a consolidated result? → /ase-meta-search What is Agentic Software Engineering?

  • Foreign LLM Query: You want to directly query a (potentially available) foreign LLM? → /ase-meta-chat gemini What is Agentic Software Engineering?

  • Package Discovery: You want to be supported in the discovery of suitable packages for the establishment of your technology stack? → /ase-arch-discover reactive UI DOM rendering

  • Multi-Criteria Decision Matrices: You want to be supported in the evaluation of alternatives with the methodological help of a weighted multi-criteria decision matrix? → /ase-meta-evaluate Vue vs. React vs. Angular, focus on TypeScript support and extensibility

  • Convenient Foreign MCP Server Setup: You have API keys for popular AI chat services and/or Web search services which ASE could optionally leverage in various skills? → ase setup mcp activate

User Setup

Prerequisites

Installation

#   install ASE tool into PATH (bootstrapping only)
npm install -g @rse/ase

#   install ASE plugin into agent tool
ase setup install [--tool claude|copilot|codex] [--scope user|project|local]

Updating

#   update ASE tool in PATH and ASE plugin in agent tool
ase setup update [--tool claude|copilot|codex] [--scope user|project|local]

Uninstallation

#   uninstall ASE tool from PATH and ASE plugin from agent tool
ase setup uninstall [--tool claude|copilot|codex] [--scope user|project|local]

The --scope option defaults to user (today's global, machine-wide behavior). Use --scope project to share the plugin registration via the repository, or --scope local to keep it out of version control and confined to a single repository. --scope is only supported for --tool claude; a non-user scope is rejected for copilot and codex, whose CLIs have no scope concept.

Foreign MCP Servers

ASE can optionally leverage foreign MCP servers in various ASE skills for improved quality. They can be conveniently managed via ase setup mcp.

#   check list of MCP servers known to ASE
ase setup mcp list

#   activate MCP servers in the agent tool
ase setup mcp activate   [--tool claude|copilot|codex] [--scope user|project|local] [<server>[,...]]

#   deactivate MCP servers in the agent tool
ase setup mcp deactivate [--tool claude|copilot|codex] [--scope user|project|local] [<server>[,...]]

Each MCP server reads its API key from an environment variable ASE_MCP_KEY_XXX, where XXX is the server id in upper-case with dashes replaced by underscores (e.g. the server openai-chatgpt uses ASE_MCP_KEY_OPENAI_CHATGPT). These variables are also automatically sourced from .env files. A server whose key variable is unset or empty is silently skipped on activation.

The following AI services are currently defined:

  • Chat: OpenAI ChatGPT (openai-chatgpt)
  • Chat: Google Gemini (google-gemini)
  • Chat: DeepSeek (deepseek)
  • Chat: xAI Grok (xai-grok)
  • Chat: Alibaba Qwen (alibaba-qwen)
  • Chat: Z.AI GLM (zai-glm)
  • Search: Brave (brave)
  • Search: Perplexity (perplexity)
  • Search: Exa (exa)

Hint: All MCP servers of type "Chat" support both the native API of the LLM vendor and the OpenRouter proxy API as an alternative, i.e. you can leverage all paid "Chat" AI services by just providing the ASE_MCP_KEY_OPENROUTER of an OpenRouter account.

See Also

  • claudeX (convenience wrapper for Anthropic Claude Code CLI)
  • mcp-to-openai (gateway between MCP and OpenAI-compatible APIs)
  • bash-authorize (pre-tool-use hook for Bash commands)

Support

ASE is developed in the experience context of industrial Software Engineering at the msg group and in the educational context of the Software Engineering Academy (SEA). ASE development is supported by msg Research and Software Engineering Academy (SEA).

Copyright & License

Copyright © 2025-2026 Dr. Ralf S. Engelschall
Licensed under Apache 2.0