{"id":48697688,"url":"https://github.com/rse/ase","last_synced_at":"2026-07-26T20:00:37.840Z","repository":{"id":349491979,"uuid":"1202557763","full_name":"rse/ase","owner":"rse","description":"Agentic Software Engineering (ASE)","archived":false,"fork":false,"pushed_at":"2026-07-19T20:11:55.000Z","size":49110,"stargazers_count":40,"open_issues_count":18,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2026-07-19T20:22:24.644Z","etag":null,"topics":["agentic-ai","agentic-coding","analyzing","artificial-intelligence","brainstroming","bugfixing","claude-code","claude-code-hooks","claude-code-plugin","claude-code-skills","crafting","linting","refactoring","software-engineering"],"latest_commit_sha":null,"homepage":"https://ase.tools","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rse.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-04-06T06:32:18.000Z","updated_at":"2026-07-19T20:11:59.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/rse/ase","commit_stats":null,"previous_names":["rse/ase"],"tags_count":104,"template":false,"template_full_name":null,"purl":"pkg:github/rse/ase","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rse%2Fase","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rse%2Fase/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rse%2Fase/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rse%2Fase/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rse","download_url":"https://codeload.github.com/rse/ase/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rse%2Fase/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35926497,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-26T02:00:06.503Z","response_time":89,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agentic-ai","agentic-coding","analyzing","artificial-intelligence","brainstroming","bugfixing","claude-code","claude-code-hooks","claude-code-plugin","claude-code-skills","crafting","linting","refactoring","software-engineering"],"created_at":"2026-04-11T08:44:39.516Z","updated_at":"2026-07-26T20:00:37.828Z","avatar_url":"https://github.com/rse.png","language":"TypeScript","funding_links":[],"categories":["Source Catalog"],"sub_categories":[],"readme":"\n[![ASE](pages/public/assets/typing-demo.gif)](https://ase.tools)\n\n[![ASE](docs/ase-banner.png)](https://ase.tools)\n\n[![github (author stars)](https://img.shields.io/github/stars/rse?logo=github\u0026label=author%20stars\u0026color=%233377aa)](https://github.com/rse)\n[![github (author followers)](https://img.shields.io/github/followers/rse?label=author%20followers\u0026logo=github\u0026color=%234477aa)](https://github.com/rse)\n\u003cbr/\u003e\n[![github (project license)](https://img.shields.io/github/license/rse/ase?logo=github\u0026label=project%20license\u0026color=%233377aa)](https://github.com/rse/ase/blob/master/LICENSE.txt)\n[![github (project release)](https://img.shields.io/github/v/release/rse/ase?logo=github\u0026label=project%20release\u0026color=%233377aa)](https://github.com/rse/ase)\n\u003cbr/\u003e\n[![github (project stars)](https://img.shields.io/github/stars/rse/ase?logo=github\u0026label=project%20stars\u0026color=%233377aa)](https://github.com/rse/ase)\n\nAbout\n-----\n\n**Agentic Software Engineering (ASE)** is the\nopinionated [Open Source](https://github.com/rse/ase/blob/master/LICENSE.txt) companion\ntoolkit of [*Dr. Ralf S. Engelschall*](https://ase.tools/#author)\nfor fusing the concept of *Agentic AI Coding* and traditional *Software Engineering*\nin the software development tool [Anthropic Claude\nCode](https://claude.com/product/claude-code) — and with reduced support also in the alternative\ntool [GitHub Copilot CLI](https://github.com/features/copilot/cli) or\n[OpenAI Codex CLI](https://github.com/openai/codex).\n\n**ASE** ships with agent hooks, agent skills, an underlying Model-Context-Protocol (MCP)\nservice and a Command-Line Interface (CLI), incorporating reasonable methodology\nand automation aspects, to support the recurring tasks of a\n*Software Developer* and *Software Architect*.\n\n**ASE** is primarily motivated by the following statement of its primary\nauthor, [*Dr. Ralf S. Engelschall*](https://ase.tools/#author):\n\n\u003e \"Software developers in the industrial Software Engineering context,\n\u003e in their recurring tasks, should leverage pre-manufactured agentic AI\n\u003e skills to boost their daily productivity. Those skills incorporate\n\u003e reasonable methodology and automation aspects while keeping the\n\u003e developers in the driver's seat to ensure stable result quality.\"\n\nNotices\n-------\n\n\u003e [!NOTE]\n\u003e **TERMINOLOGY**: The discipline of [*Agentic Software Engineering*](docs/agentic-software-engineering.md)\n\u003e in *general* is *Software Engineering*, supported by autonomous *AI\n\u003e Agents* to perform tasks across the software development lifecycle.\n\u003e This **ASE** product in *particular* is also *agentic*, but not\n\u003e strictly based on autonomous agents. Instead, **ASE** focuses on\n\u003e supporting the role of a Software Engineer with *Agentic AI Coding\n\u003e Tools* towards multi-step operations and a plan/task-driven approach,\n\u003e but still strongly focuses on Human-in-the-Loop.\n\n\u003e [!NOTE]\n\u003e **TOOL SUPPORT FOCUS**: The primary focus of **ASE** is on the Agentic AI Coding tool [*Claude\n\u003e Code*](https://code.claude.com). The secondary focus is on the support\n\u003e for [*GitHub Copilot CLI*](https://github.com/features/copilot/cli)\n\u003e (just set environment variable `ASE_TOOL=copilot`) and [*OpenAI Codex\n\u003e CLI*](https://github.com/openai/codex) (just set environment variable\n\u003e `ASE_TOOL=codex`). In the future, additional support could be provided\n\u003e also for alternative tools \u0026mdash; if their agent harness features\n\u003e (especially hooks, interactive user dialog tool, etc.) realistically\n\u003e allow it.\n\nHighlights\n----------\n\nCheck out the following scenarios and corresponding **ASE** examples to\nsee whether **ASE** is right for you:\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd width=\"50%\" valign=\"top\"\u003e\n\n- **Boosted Sessions**:\n  You want to speed up your interactive sessions and at the same time\n  reduce costs by reducing the number of produced LLM output tokens?\n  \u0026rarr; [`/ase-meta-config`](plugin/skills/ase-meta-config/help.md)\n  `set agent.persona engineer` or even\n  [`/ase-meta-config`](plugin/skills/ase-meta-config/help.md)\n  `set agent.persona caveman`\n\n- **Alternative Approach Funnel**:\n  You prefer a plan-driven approach, but the agent harness's\n  Plan Mode is too unstructured and too direct because you want to\n  leverage a funnel of alternative approaches first?\n  \u0026rarr; [`/ase-code-craft`](plugin/skills/ase-code-craft/help.md)\n  `hello: \"ase hello\" CLI command which prints a nice \"Hello World\" in red`\n\n- **Named and Persisted Plans**:\n  You prefer a plan-driven approach, but the agent harness's Plan Mode is\n  regularly too weak, because you want named, persisted, cross-session\n  reachable, and strictly structured plans?\n  \u0026rarr; [`/ase-task-edit`](plugin/skills/ase-task-edit/help.md)\n  `hello`\n\n- **Plan Stress-Testing**:\n  You have a task plan, but want to be relentlessly grilled about every\n  essential aspect of it until you and the agent reach a shared\n  understanding and no open decisions remain?\n  \u0026rarr; [`/ase-task-grill`](plugin/skills/ase-task-grill/help.md)\n  `hello`\n\n- **Implementation Preflights**:\n  You prefer a plan-driven approach, but want to pre-flight the\n  implementation without later having to rewind artifacts via the version\n  control system or the agent harness's session history?\n  \u0026rarr; [`/ase-task-preflight`](plugin/skills/ase-task-preflight/help.md)\n  `hello`\n\n- **Project Insights**:\n  You want to get a quick insight into a project by determining\n  the author, the source files with the most churn, and the module\n  structure?\n  \u0026rarr; [`/ase-code-insight`](plugin/skills/ase-code-insight/help.md)\n  `@tool`\n\n- **Code Comprehension**:\n  You want to better comprehend code by finding focused information on\n  What, Why, Analogy, Diagram, Cruxes, and Gotchas?\n  \u0026rarr; [`/ase-code-explain`](plugin/skills/ase-code-explain/help.md)\n  `@tool/src/*.ts`\n\n- **Lexical Code Analysis**:\n  You want to analyze code for potential problems\n  related to a standard set of code quality aspects?\n  \u0026rarr; [`/ase-code-lint`](plugin/skills/ase-code-lint/help.md)\n  `@tool/src/*.ts`\n\n- **Document Proofreading**:\n  You want your text documents checked and corrected for spelling,\n  punctuation, and grammar errors?\n  \u0026rarr; [`/ase-docs-proofread`](plugin/skills/ase-docs-proofread/help.md)\n  `@README.md`\n\n- **Research Quorum**:\n  You want to research a fact by asking multiple (potentially available)\n  foreign LLMs and methodologically derive a quorum answer?\n  \u0026rarr; [`/ase-meta-quorum`](plugin/skills/ase-meta-quorum/help.md)\n  `What is Agentic Software Engineering?`\n\n- **Logical Code Analysis**:\n  You want to analyze code for potential problems\n  in its logic, semantics, and control flow?\n  \u0026rarr; [`/ase-code-analyze`](plugin/skills/ase-code-analyze/help.md)\n  `@tool/src/*.ts`\n\n- **Automated Change Logs**:\n  You want to get your `CHANGELOG.md` entries\n  automatically derived from your recent Git commits?\n  \u0026rarr; [`/ase-meta-changelog`](plugin/skills/ase-meta-changelog/help.md)\n\n- **Plan Implementation**:\n  You have a named, persisted task plan and now want it implemented as a\n  single, complete change set across your project artifacts?\n  \u0026rarr; [`/ase-task-implement`](plugin/skills/ase-task-implement/help.md)\n  `hello`\n\n- **Artifact Reconciliation**:\n  You want one set of artifacts (e.g. CODE, DOCS) automatically aligned\n  to reflect the current state of another set (e.g. SPEC, ARCH), one-way\n  or bidirectionally?\n  \u0026rarr; [`/ase-sync-reconcile`](plugin/skills/ase-sync-reconcile/help.md)\n  `-s SPEC -t DOCS`\n\n- **Foreign Source Import**:\n  You want external files, URLs, or pasted text ingested and turned into\n  structured SPEC, ARCH, CODE, DOCS, or TASK artifacts?\n  \u0026rarr; [`/ase-sync-import`](plugin/skills/ase-sync-import/help.md)\n  `-t SPEC @requirements.txt`\n\n- **Artifact Export**:\n  You want artifact content materialized into derived, side-by-side\n  files, like the Data Model rendered as an SVG diagram or the Technology\n  Stack rendered as a Markdown table?\n  \u0026rarr; [`/ase-sync-export`](plugin/skills/ase-sync-export/help.md)\n  `-s SPEC,ARCH`\n\n- **Direct Skill Usage Help**:\n  You want usage help for skills directly within your agent tool sessions?\n  \u0026rarr; `/ase-xxx-xxx` `--help`\n\n\u003c/td\u003e\n\u003ctd width=\"50%\" valign=\"top\"\u003e\n\n- **Diff Summary**:\n  You want a raw Git diff turned into a concise, human-readable\n  narrative of what changed and why, grouped by intent, and with\n  optional intent-coherence check, risk grading and blast radius?\n  \u0026rarr; [`/ase-meta-diff`](plugin/skills/ase-meta-diff/help.md)\n  `-c -r -b`\n\n- **Change Review**:\n  You want the staged Git changes reviewed the way a human reviewer\n  would on a pull request, with an approve/reject verdict and\n  prioritized, severity-tagged, line-cited findings?\n  \u0026rarr; [`/ase-meta-review`](plugin/skills/ase-meta-review/help.md)\n\n- **Guided Bug Fixing**:\n  You want a problem or bug resolved through a structured, plan-driven\n  funnel of candidate root causes and fix approaches instead of a direct,\n  unstructured patch?\n  \u0026rarr; [`/ase-code-resolve`](plugin/skills/ase-code-resolve/help.md)\n  `the CLI crashes on an empty config file`\n\n- **Guided Refactoring**:\n  You want the code base refactored through a structured funnel of\n  alternative refactoring approaches, optionally captured as a named,\n  persisted task plan?\n  \u0026rarr; [`/ase-code-refactor`](plugin/skills/ase-code-refactor/help.md)\n  `extract the config loading into a dedicated module`\n\n- **Architecture Analysis**:\n  You want your software architecture reviewed for package cohesion and\n  inter-package coupling to spot structural weak spots?\n  \u0026rarr; [`/ase-arch-analyze`](plugin/skills/ase-arch-analyze/help.md)\n  `@tool/src`\n\n- **Collaborative Brainstorming**:\n  You want to figure out *what* to build before *how*, by diverging on\n  a broad space of ideas and then converging through clustering and\n  scoring into a recommended direction?\n  \u0026rarr; [`/ase-meta-brainstorm`](plugin/skills/ase-meta-brainstorm/help.md)\n  `an offline-first sync layer for the mobile app`\n\n- **Root-Cause Analysis**:\n  You want to understand the reason for a fact with the help of the\n  \"Five-Whys\" root-cause determination method?\n  \u0026rarr; [`/ase-meta-why`](plugin/skills/ase-meta-why/help.md)\n  `is the Decibel (dB) unit a logarithmic one?`\n\n- **Devil's Advocate Challenge**:\n  You want a thesis or statement relentlessly challenged and criticised,\n  and finally resolved into a balanced Hegelian synthesis?\n  \u0026rarr; [`/ase-meta-diaboli`](plugin/skills/ase-meta-diaboli/help.md)\n  `The Decibel (dB) is an intuitive unit.`\n\n- **Steelman Argument**:\n  You want a thesis or statement charitably strengthened with the\n  strongest possible case, and finally consolidated into a fortification\n  argument?\n  \u0026rarr; [`/ase-meta-steelman`](plugin/skills/ase-meta-steelman/help.md)\n  `ASE is one of the best Anthropic Claude Code CLI add-ons.`\n\n- **Key Point Distillation**:\n  You want a document distilled into a flat, importance-ranked list of\n  its key points, each with a salience rank, a rationale, and a verbatim\n  line-cited evidence snippet?\n  \u0026rarr; [`/ase-docs-distill`](plugin/skills/ase-docs-distill/help.md)\n  `doc/architecture.md`\n\n- **Search Engine Consolidation**:\n  You want to query multiple (potentially available) search engines\n  and derive a consolidated result?\n  \u0026rarr; [`/ase-meta-search`](plugin/skills/ase-meta-search/help.md)\n  `What is Agentic Software Engineering?`\n\n- **ELI5 Topic Explanation**:\n  You want a topic explained in a very simple, child-friendly\n  \"Explain Like I'm 5\" (ELI5) way, optionally grounded in Web facts?\n  \u0026rarr; [`/ase-meta-eli5`](plugin/skills/ase-meta-eli5/help.md)\n  `Fourier transform`\n\n- **Topic Quote Finding**:\n  You want quotes on a topic, sorted into a 2x2 matrix of attributed\n  vs. anonymous and literal vs. thematic ones?\n  \u0026rarr; [`/ase-meta-quotes`](plugin/skills/ase-meta-quotes/help.md)\n  `software architecture`\n\n- **Foreign LLM Query**:\n  You want to directly query a (potentially available) foreign LLM?\n  \u0026rarr; [`/ase-meta-chat`](plugin/skills/ase-meta-chat/help.md)\n  `gemini What is Agentic Software Engineering?`\n\n- **Package Discovery**:\n  You want to be supported in the discovery of suitable packages\n  for the establishment of your technology stack?\n  \u0026rarr; [`/ase-arch-discover`](plugin/skills/ase-arch-discover/help.md)\n  `reactive UI DOM rendering`\n\n- **Multi-Criteria Decision Matrices**:\n  You want to be supported in the evaluation of alternatives with the\n  methodological help of a weighted multi-criteria decision matrix?\n  \u0026rarr; [`/ase-meta-evaluate`](plugin/skills/ase-meta-evaluate/help.md)\n  `Vue vs. React vs. Angular, focus on TypeScript support and extensibility`\n\n- **Convenient Foreign MCP Server Setup**:\n  You have API keys for popular AI chat services and/or Web search services\n  which ASE could *optionally* leverage in various skills?\n  \u0026rarr; `ase setup mcp activate`\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\nUser Setup\n----------\n\n### Prerequisites\n\n- Operating System: macOS, Linux, Windows\n- Agent Tool: [Anthropic Claude Code CLI](https://code.claude.com), [GitHub Copilot CLI](https://github.com/features/copilot/cli), or [OpenAI Codex CLI](https://github.com/openai/codex)\n- Runtime Engine: [Node.js](https://nodejs.org)\n\n### Installation\n\n```\n#   install ASE tool into PATH (bootstrapping only)\nnpm install -g @rse/ase\n\n#   install ASE plugin into agent tool\nase setup install [--tool claude|copilot|codex] [--scope user|project|local]\n```\n\n### Updating\n\n```\n#   update ASE tool in PATH and ASE plugin in agent tool\nase setup update [--tool claude|copilot|codex] [--scope user|project|local]\n```\n\n### Uninstallation\n\n```\n#   uninstall ASE tool from PATH and ASE plugin from agent tool\nase setup uninstall [--tool claude|copilot|codex] [--scope user|project|local]\n```\n\nThe `--scope` option defaults to `user` (today's global, machine-wide behavior). Use\n`--scope project` to share the plugin registration via the repository, or `--scope\nlocal` to keep it out of version control and confined to a single repository. `--scope`\nis only supported for `--tool claude`; a non-`user` scope is rejected for `copilot` and\n`codex`, whose CLIs have no scope concept.\n\nForeign MCP Servers\n-------------------\n\n**ASE** can *optionally* leverage foreign MCP servers in various **ASE**\nskills for improved quality. They can be conveniently managed via `ase\nsetup mcp`.\n\n```\n#   check list of MCP servers known to ASE\nase setup mcp list\n\n#   activate MCP servers in the agent tool\nase setup mcp activate   [--tool claude|copilot|codex] [--scope user|project|local] [\u003cserver\u003e[,...]]\n\n#   deactivate MCP servers in the agent tool\nase setup mcp deactivate [--tool claude|copilot|codex] [--scope user|project|local] [\u003cserver\u003e[,...]]\n```\n\nEach MCP server reads its API key from an environment\nvariable `ASE_MCP_KEY_XXX`, where `XXX` is the server id in\nupper-case with dashes replaced by underscores (e.g. the server\n`openai-chatgpt` uses `ASE_MCP_KEY_OPENAI_CHATGPT`). These variables\nare also automatically sourced from `.env` files. A server whose\nkey variable is unset or empty is silently skipped on activation.\nThe harness-based servers (`anthropic-claude`, `openai-codex` and\n`github-copilot`) require no API key at all -- their variable instead\ncarries the harness model identifier (or the special value `default` for\nthe default model of the harness).\n\nThe following AI services are currently defined:\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd width=\"50%\" valign=\"top\"\u003e\n\n- Chat: OpenAI ChatGPT (`openai-chatgpt`)\n- Chat: Google Gemini (`google-gemini`)\n- Chat: DeepSeek (`deepseek`)\n- Chat: xAI Grok (`xai-grok`)\n- Chat: Alibaba Qwen (`alibaba-qwen`)\n- Chat: Z.AI GLM (`zai-glm`)\n- Chat: Anthropic Claude (`anthropic-claude`)\n- Chat: OpenAI Codex (`openai-codex`)\n- Chat: GitHub Copilot (`github-copilot`)\n\n\u003c/td\u003e\n\u003ctd width=\"50%\" valign=\"top\"\u003e\n\n- Search: Brave (`brave`)\n- Search: Perplexity (`perplexity`)\n- Search: Exa (`exa`)\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\nHint: All API-based MCP servers of type \"Chat\" support both the native\nAPI of the LLM vendor and the *OpenRouter* proxy API as an alternative,\ni.e. you can leverage all paid \"Chat\" AI services by just providing the\n`ASE_MCP_KEY_OPENROUTER` of an *OpenRouter* account. Alternatively,\nthe harness-based MCP servers of type \"Chat\" (`anthropic-claude`,\n`openai-codex` and `github-copilot`) require no API key at all, as they\nbridge to a locally installed AI agent harness CLI (Anthropic Claude\nCode CLI, OpenAI Codex CLI, or GitHub Copilot CLI) which authenticates\nvia its own configured credentials.\n\nSee Also\n--------\n\n- [claudeX](https://github.com/rse/claudex) (convenience wrapper for Anthropic Claude Code CLI)\n- [mcp-to-openai](https://github.com/rse/mcp-to-openai) (gateway between MCP and OpenAI-compatible APIs)\n- [mcp-to-harness](https://github.com/rse/mcp-to-harness) (bridge between MCP and AI agent harness CLIs)\n- [bash-authorize](https://github.com/rse/bash-authorize) (pre-tool-use hook for Bash commands)\n\nSupport\n-------\n\n**ASE** is developed in the experience context of industrial Software\nEngineering at the [*msg group*](https://www.msg.group) and in the\neducational context of the *Software Engineering Academy (SEA)*. **ASE**\ndevelopment is supported by *msg Research* and *Software Engineering\nAcademy (SEA)*.\n\nCopyright \u0026 License\n-------------------\n\nCopyright \u0026copy; 2025-2026 [Dr. Ralf S. Engelschall](https://engelschall.com)\u003cbr/\u003e\nLicensed under [Apache 2.0](https://spdx.org/licenses/Apache-2.0)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frse%2Fase","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frse%2Fase","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frse%2Fase/lists"}