autoforge-ai 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/commands/check-code.md +32 -0
- package/.claude/commands/checkpoint.md +40 -0
- package/.claude/commands/create-spec.md +613 -0
- package/.claude/commands/expand-project.md +234 -0
- package/.claude/commands/gsd-to-autoforge-spec.md +10 -0
- package/.claude/commands/review-pr.md +75 -0
- package/.claude/templates/app_spec.template.txt +331 -0
- package/.claude/templates/coding_prompt.template.md +265 -0
- package/.claude/templates/initializer_prompt.template.md +354 -0
- package/.claude/templates/testing_prompt.template.md +146 -0
- package/.env.example +64 -0
- package/LICENSE.md +676 -0
- package/README.md +423 -0
- package/agent.py +444 -0
- package/api/__init__.py +10 -0
- package/api/database.py +536 -0
- package/api/dependency_resolver.py +449 -0
- package/api/migration.py +156 -0
- package/auth.py +83 -0
- package/autoforge_paths.py +315 -0
- package/autonomous_agent_demo.py +293 -0
- package/bin/autoforge.js +3 -0
- package/client.py +607 -0
- package/env_constants.py +27 -0
- package/examples/OPTIMIZE_CONFIG.md +230 -0
- package/examples/README.md +531 -0
- package/examples/org_config.yaml +172 -0
- package/examples/project_allowed_commands.yaml +139 -0
- package/lib/cli.js +791 -0
- package/mcp_server/__init__.py +1 -0
- package/mcp_server/feature_mcp.py +988 -0
- package/package.json +53 -0
- package/parallel_orchestrator.py +1800 -0
- package/progress.py +247 -0
- package/prompts.py +427 -0
- package/pyproject.toml +17 -0
- package/rate_limit_utils.py +132 -0
- package/registry.py +614 -0
- package/requirements-prod.txt +14 -0
- package/security.py +959 -0
- package/server/__init__.py +17 -0
- package/server/main.py +261 -0
- package/server/routers/__init__.py +32 -0
- package/server/routers/agent.py +177 -0
- package/server/routers/assistant_chat.py +327 -0
- package/server/routers/devserver.py +309 -0
- package/server/routers/expand_project.py +239 -0
- package/server/routers/features.py +746 -0
- package/server/routers/filesystem.py +514 -0
- package/server/routers/projects.py +524 -0
- package/server/routers/schedules.py +356 -0
- package/server/routers/settings.py +127 -0
- package/server/routers/spec_creation.py +357 -0
- package/server/routers/terminal.py +453 -0
- package/server/schemas.py +593 -0
- package/server/services/__init__.py +36 -0
- package/server/services/assistant_chat_session.py +496 -0
- package/server/services/assistant_database.py +304 -0
- package/server/services/chat_constants.py +57 -0
- package/server/services/dev_server_manager.py +557 -0
- package/server/services/expand_chat_session.py +399 -0
- package/server/services/process_manager.py +657 -0
- package/server/services/project_config.py +475 -0
- package/server/services/scheduler_service.py +683 -0
- package/server/services/spec_chat_session.py +502 -0
- package/server/services/terminal_manager.py +756 -0
- package/server/utils/__init__.py +1 -0
- package/server/utils/process_utils.py +134 -0
- package/server/utils/project_helpers.py +32 -0
- package/server/utils/validation.py +54 -0
- package/server/websocket.py +903 -0
- package/start.py +456 -0
- package/ui/dist/assets/index-8W_wmZzz.js +168 -0
- package/ui/dist/assets/index-B47Ubhox.css +1 -0
- package/ui/dist/assets/vendor-flow-CVNK-_lx.js +7 -0
- package/ui/dist/assets/vendor-query-BUABzP5o.js +1 -0
- package/ui/dist/assets/vendor-radix-DTNNCg2d.js +45 -0
- package/ui/dist/assets/vendor-react-qkC6yhPU.js +1 -0
- package/ui/dist/assets/vendor-utils-COeKbHgx.js +2 -0
- package/ui/dist/assets/vendor-xterm-DP_gxef0.js +16 -0
- package/ui/dist/index.html +23 -0
- package/ui/dist/ollama.png +0 -0
- package/ui/dist/vite.svg +6 -0
- package/ui/package.json +57 -0
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# Project-Specific Allowed Commands
|
|
2
|
+
# ==================================
|
|
3
|
+
# Location: {project_dir}/.autoforge/allowed_commands.yaml
|
|
4
|
+
#
|
|
5
|
+
# This file defines bash commands that the autonomous coding agent can use
|
|
6
|
+
# for THIS SPECIFIC PROJECT, beyond the default allowed commands.
|
|
7
|
+
#
|
|
8
|
+
# When you create a new project, AutoForge automatically creates this file
|
|
9
|
+
# in your project's .autoforge/ directory. You can customize it for your
|
|
10
|
+
# project's specific needs (iOS, Rust, Python, etc.).
|
|
11
|
+
|
|
12
|
+
version: 1
|
|
13
|
+
|
|
14
|
+
# Uncomment the commands you need for your specific project.
|
|
15
|
+
# By default, this file has NO commands enabled - you must explicitly add them.
|
|
16
|
+
|
|
17
|
+
commands: []
|
|
18
|
+
|
|
19
|
+
# ==========================================
|
|
20
|
+
# iOS Development Example
|
|
21
|
+
# ==========================================
|
|
22
|
+
# Uncomment these if building an iOS app:
|
|
23
|
+
|
|
24
|
+
# - name: xcodebuild
|
|
25
|
+
# description: Xcode build system for compiling iOS apps
|
|
26
|
+
|
|
27
|
+
# - name: swift
|
|
28
|
+
# description: Swift compiler and REPL
|
|
29
|
+
|
|
30
|
+
# - name: swiftc
|
|
31
|
+
# description: Swift compiler command-line interface
|
|
32
|
+
|
|
33
|
+
# - name: xcrun
|
|
34
|
+
# description: Run Xcode developer tools
|
|
35
|
+
|
|
36
|
+
# - name: simctl
|
|
37
|
+
# description: iOS Simulator control tool
|
|
38
|
+
|
|
39
|
+
# Pattern matching with wildcard
|
|
40
|
+
# This matches: swift, swiftc, swiftformat, swiftlint, etc.
|
|
41
|
+
# - name: swift*
|
|
42
|
+
# description: All Swift development tools
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
# ==========================================
|
|
46
|
+
# Rust Development Example
|
|
47
|
+
# ==========================================
|
|
48
|
+
# Uncomment these if building a Rust project:
|
|
49
|
+
|
|
50
|
+
# - name: cargo
|
|
51
|
+
# description: Rust package manager and build tool
|
|
52
|
+
|
|
53
|
+
# - name: rustc
|
|
54
|
+
# description: Rust compiler
|
|
55
|
+
|
|
56
|
+
# - name: rustfmt
|
|
57
|
+
# description: Rust code formatter
|
|
58
|
+
|
|
59
|
+
# - name: clippy
|
|
60
|
+
# description: Rust linter
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
# ==========================================
|
|
64
|
+
# Python Development Example
|
|
65
|
+
# ==========================================
|
|
66
|
+
# Uncomment these if building a Python project:
|
|
67
|
+
|
|
68
|
+
# - name: python3
|
|
69
|
+
# description: Python 3 interpreter
|
|
70
|
+
|
|
71
|
+
# - name: pip3
|
|
72
|
+
# description: Python package installer
|
|
73
|
+
|
|
74
|
+
# - name: pytest
|
|
75
|
+
# description: Python testing framework
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
# ==========================================
|
|
79
|
+
# Database Tools Example
|
|
80
|
+
# ==========================================
|
|
81
|
+
# Uncomment these if you need database access:
|
|
82
|
+
|
|
83
|
+
# - name: psql
|
|
84
|
+
# description: PostgreSQL command-line client
|
|
85
|
+
|
|
86
|
+
# - name: sqlite3
|
|
87
|
+
# description: SQLite database CLI
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
# ==========================================
|
|
91
|
+
# Project-Specific Scripts
|
|
92
|
+
# ==========================================
|
|
93
|
+
# Local scripts are matched by filename, so these work from any directory
|
|
94
|
+
# Uncomment and customize for your project:
|
|
95
|
+
|
|
96
|
+
# - name: ./scripts/build.sh
|
|
97
|
+
# description: Project build script
|
|
98
|
+
|
|
99
|
+
# - name: ./scripts/test.sh
|
|
100
|
+
# description: Run all project tests
|
|
101
|
+
|
|
102
|
+
# - name: ./scripts/deploy-staging.sh
|
|
103
|
+
# description: Deploy to staging environment
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
# ==========================================
|
|
107
|
+
# Notes and Best Practices
|
|
108
|
+
# ==========================================
|
|
109
|
+
#
|
|
110
|
+
# Pattern Matching:
|
|
111
|
+
# - Exact: "swift" matches only "swift"
|
|
112
|
+
# - Wildcard: "swift*" matches "swift", "swiftc", "swiftlint", etc.
|
|
113
|
+
# - Scripts: "./scripts/build.sh" matches the script by name
|
|
114
|
+
#
|
|
115
|
+
# Limits:
|
|
116
|
+
# - Maximum 100 commands per project
|
|
117
|
+
# - Commands in the blocklist (sudo, dd, shutdown, etc.) can NEVER be allowed
|
|
118
|
+
# - Org-level blocked commands (see ~/.autoforge/config.yaml) cannot be overridden
|
|
119
|
+
#
|
|
120
|
+
# Default Allowed Commands (always available):
|
|
121
|
+
# File operations: ls, cat, head, tail, wc, grep, cp, mkdir, mv, rm, touch
|
|
122
|
+
# Shell: pwd, echo, sh, bash, sleep
|
|
123
|
+
# Version control: git
|
|
124
|
+
# Process management: ps, lsof, kill, pkill (dev processes only)
|
|
125
|
+
# Network: curl
|
|
126
|
+
# Node.js: npm, npx, pnpm, node
|
|
127
|
+
# Docker: docker
|
|
128
|
+
# chmod: Only +x mode (making scripts executable)
|
|
129
|
+
#
|
|
130
|
+
# Hardcoded Blocklist (NEVER allowed):
|
|
131
|
+
# Disk operations: dd, mkfs, fdisk, parted
|
|
132
|
+
# System control: shutdown, reboot, poweroff, halt, init
|
|
133
|
+
# Privilege escalation: sudo, su, doas
|
|
134
|
+
# System services: systemctl, service, launchctl
|
|
135
|
+
# Network security: iptables, ufw
|
|
136
|
+
# Ownership changes: chown, chgrp
|
|
137
|
+
# Dangerous commands: aws, gcloud, az, kubectl (unless org allows)
|
|
138
|
+
#
|
|
139
|
+
# To learn more, see: examples/README.md
|