From 516f26edaef15bddcd22b8d2d0a1118c4bc7a9a2 Mon Sep 17 00:00:00 2001 From: Kacper Date: Thu, 18 Dec 2025 16:22:20 +0100 Subject: [PATCH 1/2] fix: prevent infinite loop when resuming feature with existing context MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When executeFeatureWithContext calls executeFeature with a continuation prompt, skip the context existence check to avoid the loop: executeFeature -> resumeFeature -> executeFeatureWithContext -> executeFeature 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- apps/server/src/services/auto-mode-service.ts | 23 +++++++++++-------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/apps/server/src/services/auto-mode-service.ts b/apps/server/src/services/auto-mode-service.ts index 61130314..b676c0c9 100644 --- a/apps/server/src/services/auto-mode-service.ts +++ b/apps/server/src/services/auto-mode-service.ts @@ -487,17 +487,20 @@ export class AutoModeService { try { // Check if feature has existing context - if so, resume instead of starting fresh - const hasExistingContext = await this.contextExists( - projectPath, - featureId - ); - if (hasExistingContext) { - console.log( - `[AutoMode] Feature ${featureId} has existing context, resuming instead of starting fresh` + // Skip this check if we're already being called with a continuation prompt (from resumeFeature) + if (!options?.continuationPrompt) { + const hasExistingContext = await this.contextExists( + projectPath, + featureId ); - // Remove from running features temporarily, resumeFeature will add it back - this.runningFeatures.delete(featureId); - return this.resumeFeature(projectPath, featureId, useWorktrees); + if (hasExistingContext) { + console.log( + `[AutoMode] Feature ${featureId} has existing context, resuming instead of starting fresh` + ); + // Remove from running features temporarily, resumeFeature will add it back + this.runningFeatures.delete(featureId); + return this.resumeFeature(projectPath, featureId, useWorktrees); + } } // Emit feature start event early From 0dfe5a91e7f4787e0f0450d2a4edbba474147ff6 Mon Sep 17 00:00:00 2001 From: Cody Seibert Date: Thu, 18 Dec 2025 12:18:22 -0500 Subject: [PATCH 2/2] feat: add Automaker Starter Kit template to starterTemplates Introduced a new starter template for the Automaker Starter Kit, which includes a comprehensive description, tech stack, features, and author information. This template aims to support aspiring full stack engineers in their learning journey. --- apps/app/src/lib/templates.ts | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/apps/app/src/lib/templates.ts b/apps/app/src/lib/templates.ts index b445895a..9d368052 100644 --- a/apps/app/src/lib/templates.ts +++ b/apps/app/src/lib/templates.ts @@ -16,6 +16,26 @@ export interface StarterTemplate { } export const starterTemplates: StarterTemplate[] = [ + { + id: "automaker-starter-kit", + name: "Automaker Starter Kit", + description: "An online community and training platform template for aspiring full stack engineers. Master frontend and backend development, build real-world projects, and launch your software engineering career.", + repoUrl: "https://github.com/webdevcody/automaker-starter-kit", + techStack: ["TanStack Start", "PostgreSQL", "Drizzle ORM", "Better Auth", "Tailwind CSS", "Radix UI", "Stripe", "AWS S3/R2"], + features: [ + "Community posts with comments and reactions", + "User profiles and portfolios", + "Calendar event management", + "Direct messaging", + "Member discovery directory", + "Real-time notifications", + "Classroom modules for learning", + "Tiered subscriptions (free/basic/pro)", + "File uploads with presigned URLs" + ], + category: "fullstack", + author: "webdevcody" + }, { id: "agentic-jumpstart", name: "Agentic Jumpstart",