Huawei CodeArts Adds Spec-Driven Development to Counter Vibe Coding's Enterprise Gaps
I. AI programming is moving from 'improvisation' to 'specification first'
Since 2025, Vibe Coding has made 'conversation as programming' a reality, significantly lowering the barrier to software development and gaining widespread adoption among developers. However, as AI programming transitions from individual development to enterprise-level software delivery, some limitations of Vibe Coding have become increasingly apparent: misunderstandings of requirements lead to repeated rework, a lack of software design causes architectural drift, and the absence of verifiable output standards hinders large-scale application in enterprise scenarios. For enterprise software development that requires long-term maintenance, multi-person collaboration, and high quality, relying solely on Vibe Coding is no longer sustainable.
Against this backdrop, Specification-Driven Development (SDD) is rapidly emerging as the industry's focus for the evolution of AI programming. SDD is a software engineering methodology that uses specifications as the driving force for software development. It drives design, task planning, code generation, and testing activities through specifications, enhancing the controllability and traceability of the software development process. Developers provide requirements including functional descriptions and business rules, and the AI agent generates high-quality specifications, design proposals, and task plans based on these requirement descriptions. This allows developers and AI agents to reach a consensus on 'what to do' before coding begins. High-quality code is then generated on this basis, mitigating issues like requirement misunderstandings and implementation deviating from design common in Vibe Coding scenarios. Unlike Vibe Coding, SDD emphasizes a 'specification first' philosophy, shifting the developer's focus to high-level requirement definition and architectural design, while letting the AI agent handle repetitive, patterned coding work, thus achieving efficient human-machine collaborative development. Over the past year, AI programming tools in the industry have successively introduced SDD capabilities: AWS launched Kiro, an intelligent development tool featuring an SDD workflow, implementing specification-driven development through a three-document process of 'requirements → design → tasks'; GitHub released Spec Kit, which drives code generation through document artifacts like specs, plans, and tasks; OpenSpec conducts SDD around 'change proposals': the AI agent creates a proposal containing specification changes, design, and task lists, aligns and confirms the content with the developer before implementing the code, and finally archives the proposal and synchronously updates the project specifications, keeping specifications and code always in sync. The developer community's discussion on SDD continues to heat up, with a general consensus that it is the key path for AI programming to move from 'usable' to 'enterprise-ready'.
SDD and Vibe Coding are two complementary modes in the AI programming era. Vibe Coding is suitable for rapid exploration and prototype validation, while SDD intelligently applies traditional software engineering practices like requirements analysis, system design, and task decomposition, shifting the developer's focus to high-level requirement definition and architectural design, and letting AI undertake repetitive and patterned coding work. Using both in combination maintains the agility of exploration while improving the quality of delivery.
II. The Four-Stage Progressive Process and Core Advantages of HUAWEI CLOUD CodeArts Code Agent's SDD Mode
Amid the wave of AI reshaping software engineering, HUAWEI CLOUD recently released the CodeArts Code Agent (version 26.6.0), which now supports the Specification-Driven Development (SDD) mode and continues to deepen its capabilities. This marks a crucial step for the HUAWEI CLOUD CodeArts Code Agent towards enterprise-level software development, building upon Vibe Coding. This mode supports using specifications as the core driving force, guiding the AI agent's code development behavior through more standardized software engineering processes such as requirement specification design, implementation plan creation, and coding task planning, providing code auto-generation capabilities that better meet developer expectations.
Figure 1. Specification-Driven Development Mode of HUAWEI CLOUD CodeArts Code Agent
The SDD mode of HUAWEI CLOUD CodeArts Code Agent adopts a four-stage progressive process (as shown in Figure 1), including Requirement Specification Design, Implementation Plan Creation, Coding Task Planning, and Task Execution. Specifically:
Requirement Specification Design is the starting point of the SDD mode and the cornerstone of the entire process. In this stage, the agent helps developers describe business requirements in natural language or semi-structured templates, including functional goals, input/output definitions, business rules, exception scenarios, and non-functional constraints. It uses a large language model to semantically understand the requirement text, automatically extract key business entities, and generate a requirement specification document. The core value of this stage lies in helping developers systematically organize and express requirements before coding, clarifying ambiguous statements, logical conflicts, and missing scenarios in the requirements, assisting developers in producing high-quality, low-ambiguity requirement specifications, and reducing later rework caused by requirement misunderstandings.
After completing the requirement specification design, the SDD mode enters the Implementation Plan Creation stage. Based on the confirmed requirement specification, the HUAWEI CLOUD CodeArts Code Agent automatically performs system architecture analysis and module division, generating an implementation plan document containing overall design and detailed design. Specifically, the agent recommends a suitable technology stack and architectural patterns (such as microservices, layered architecture, etc.) based on the specification, and generates interface definitions for each module, database table structures, core class diagrams, and pseudocode for key algorithms. Developers can review this and interact with the agent to adjust content that does not meet expectations, ensuring the technical plan is implementable.
The Coding Task Planning stage further refines the implementation plan into an executable list of development tasks. Based on the module division and dependencies in the implementation plan, the HUAWEI CLOUD CodeArts Code Agent automatically generates a structured list of coding tasks, each containing a clear task description and acceptance criteria. In this stage, the agent also analyzes the dependencies between tasks and provides a reasonable task execution order.
Task Execution is the coding output stage of the SDD mode. The HUAWEI CLOUD CodeArts Code Agent generates code based on the results of the coding task plan. In the code generation phase, the agent produces high-quality, compilable, and runnable code. Furthermore, the agent performs a preliminary acceptance check on the generated code against the acceptance criteria in the coding tasks to determine if the AI agent has completed the task and supplements any omissions.
Compared to Vibe Coding, the advantages of the HUAWEI CLOUD CodeArts Code Agent's SDD mode are reflected in four aspects:
Specification First: Before coding, the AI agent reaches a consensus with the person on 'what to do,' mitigating later rework caused by requirement misunderstandings at the source;
Development Process Documentation: Requirement specifications, design plans, and task lists are all documented, making code generation traceable and meeting the documentation requirements of enterprise-level development scenarios;
Built-in Quality, Acceptance Closed-Loop: Each coding task comes with acceptance criteria, and preliminary acceptance is performed after code generation, embedding quality throughout the development process;
Efficient Human-Machine Collaboration: Developers focus on requirement definition and architectural decisions, while the AI agent handles more coding work. Artifacts from each stage can be manually reviewed and corrected.
Currently, the SDD mode of the HUAWEI CLOUD CodeArts Code Agent is open for experience by enterprise users and individual developers. Users can download and use it through the CodeArts Code Agent website (https://codearts.huaweicloud.com/). The CodeArts Code Agent website provides detailed product documentation and quick start guides for first-time users, helping developers master its usage in the shortest possible time. Meanwhile, the HUAWEI CLOUD CodeArts Code Agent product team will continuously collect user feedback to optimize the product experience and effectiveness.
After its launch, the Specification-Driven Development mode quickly gained recognition from the developer community and friendly technical team users. Third-party evaluation testers from the Juejin technical community and GitCode considered the SDD mode a superior capability of the HUAWEI CLOUD CodeArts Code Agent, very practical for enterprise scenarios requiring code traceability, and further pointed out that 'specification-driven development makes enterprise-level code generation evidence-based and traceable, which is a rigid demand for enterprise development scenarios.' Meanwhile, based on actual usage experience, developers suggested a mode combination: 'Use the specification-driven mode to build the skeleton and iterate quickly in the early stages of a project, switch back to exploration mode for diagnosis when encountering problems, and return to specification-driven mode after resolution. Using the two modes in combination yields the best results.'
Figure 2. HUAWEI CLOUD CodeArts Code Agent Official Website
III. HUAWEI CLOUD CodeArts Code Agent SDD Case Demonstration
This case uses the open-source Java enterprise development platform ruoyi-vue-pro project, based on Spring Boot, as an example to demonstrate the development of the incremental requirement 'Member Account Lockout After Consecutive Login Failures' through the SDD mode of the HUAWEI CLOUD CodeArts Code Agent. The development process proceeds sequentially through the four stages of SDD: Requirement Specification Design, Implementation Plan Creation, Coding Task Planning, and Task Execution, presenting two capabilities: requirement specification document content checking and correlation analysis between requirements and existing functions. The original requirement description for this incremental development is as follows: 'When a user enters an incorrect password multiple times consecutively during login, the system should temporarily lock the account. Login should not be allowed during the lockout period, and the user should be prompted to try again later or contact the administrator. The account should automatically unlock after a period of time, and the administrator can also manually unlock it in the backend. The user should be notified when their account is locked. This mechanism needs to cover both the admin backend login and the C-end member login.'
Stage 1: Requirement Specification Design, Generating High-Quality Requirement Specification Document
After entering the SDD workflow of the HUAWEI CLOUD CodeArts Code Agent, the Code Agent first generates a requirement specification document based on the user's generation request, forming a specification covering elements such as component positioning, domain terminology, roles and boundaries, core capabilities, and data constraints.
Figure 3. Requirement Specification Document Generation Stage in the SDD Mode of HUAWEI CLOUD CodeArts Code Agent
Taking this requirement as an example, the original description was expanded into a specification that can effectively guide development and testing: the Component Positioning chapter clarifies core responsibilities and inputs/outputs; the Domain Terminology chapter provides unambiguous definitions for key concepts such as login failure count, lockout threshold, statistical time window, and user type, elaborating on vague expressions like 'multiple times consecutively' and 'a period of time' from the original requirement into clearer content; the Roles and Boundaries chapter identifies three core roles—admin backend user, C-end member user, and system administrator—as well as three external services—login authentication, message notification, and scheduled scheduling—and presents the component overview with an interaction context diagram; the Core Capabilities chapter decomposes the requirement into five capabilities: login failure counting, account lockout triggering, automatic unlocking, manual unlocking, and lockout status querying. Each capability includes business rules, interaction flow diagrams, and exception scenarios, and each business rule comes with semi-formal acceptance criteria in the format '[Precondition] → [Expected Result]'; the Data Constraints chapter fully defines the data elements for lockout records, policy configuration, and audit records, making the lockout threshold (default 5 times), lockout duration (default 30 minutes), and statistical time window (default 10 minutes) more explicit, and supports independent configuration for the two user systems.
After generating the requirement specification document, the SDD mode of the HUAWEI CLOUD CodeArts Code Agent introduces a document checking mechanism, which performs content checks on the specification document based on established rules to ensure the document's chapter content conforms to the preset document template.
Stage 2: Implementation Plan Creation — Correlation Analysis of Requirements and Existing Functions
After the specification document is generated, the process enters the Implementation Plan Creation stage. Before generating the implementation plan, the HUAWEI CLOUD CodeArts Code Agent SDD first conducts a correlation analysis between the requirements and existing functions in the target code repository. It presents the results of the correlation analysis in three parts: 'Already Implemented, Needs Extension, Needs Addition,' providing a description of existing capabilities and clarifying the extension direction and development direction for the parts that need to be extended and added. Taking this requirement as an example, the analysis results identified the modification points corresponding to the two independent authentication systems for the admin backend and C-end members, and inventoried multiple directly reusable existing capabilities such as the scheduled task framework, SMS and internal message interfaces, and user type enumerations.
Figure 4. Implementation Plan Creation Stage in the SDD Mode of HUAWEI CLOUD CodeArts Code Agent
Based on the above analysis results, the SDD mode of the HUAWEI CLOUD CodeArts Code Agent provided an incremental design plan: In terms of the overall service component architecture, the new capability is carried by an independent 'Login Account Lockout' component. This component follows the existing layered specifications of the current project and maintains only clear call boundaries with the existing authentication service, modifying the existing code at minimal cost. The state machine design fully depicts the state transition of an account from 'Unlocked' to 'Locked,' with the trigger conditions and accompanying actions for each state transition clearly defined, providing a clear behavioral baseline for coding and testing.
Stage 3: Coding Task Planning
After the implementation plan is finalized, the SDD mode of the HUAWEI CLOUD CodeArts Code Agent decomposes the implementation plan document into a list of coding tasks that can be executed item by item. The coding task items are organized bottom-up in dependency order, covering tasks from database tables and data models, enumerations and error code extensions, core lockout service, dual login link integration modifications, admin backend interfaces, automatic unlock scheduled tasks, to unit tests. The task granularity is precise down to specific file paths and code insertion locations.
Figure 6. Coding Task Planning Stage in the SDD Mode of HUAWEI CLOUD CodeArts Code Agent
Stage 4: Task Execution
In this stage, coding tasks are carried out step by step according to the task items listed in the coding task plan until all tasks on the list are completed. After completing code development tasks, some coding errors were discovered and fixed through compilation checks.
Figure 7. Coding Task Execution Stage in the SDD Mode of HUAWEI CLOUD CodeArts Code Agent
The functional behavior of the code developed this time met expectations. After 5 consecutive incorrect password attempts, subsequent login requests were intercepted and returned a lockout prompt; the admin backend could query the lockout status and execute manual unlocking. Each behavior corresponded to the '[Precondition] → [Expected Result]' acceptance criteria in the specification document from Stage 1, achieving an end-to-end delivery closed loop from requirements to code.
This case demonstrated the code development capability of the HUAWEI CLOUD CodeArts Code Agent's SDD mode on a complex open-source project: the requirement specification analysis stage optimized vaguely stated content into clearer specific specifications and acceptance criteria; the requirement and existing function correlation analysis function described existing capabilities and clarified the extension and development directions for parts needing extension and addition; the coding task planning stage provided a list of coding tasks executable item by item; the requirement specification document drove solution design, task planning, and code development. The SDD mode of the HUAWEI CLOUD CodeArts Code Agent enhanced the certainty and effectiveness of requirement development and code delivery for existing projects through the two capabilities of 'writing requirements clearly' and 'reading existing code thoroughly.'