Skip to content

Commit 5a6d2b1

Browse files
committed
feat: add AI Agent Development Guidelines to OpenSpec
Add comprehensive AI Agent guidelines covering: - Containerization best practices (Podman-first hierarchy) - GitHub Actions debugging and tracing workflows - Job-based pipeline architecture with binary artifact management - Jekyll standalone documentation build guidelines - Node.js native module best practices and cross-platform considerations Guidelines follow OpenSpec systematic format with requirements and scenarios to ensure AI agents have clear, actionable instructions while maintaining consistency with existing project structure.
1 parent 771a4df commit 5a6d2b1

1 file changed

Lines changed: 88 additions & 0 deletions

File tree

openspec/project.md

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,94 @@ describe('Syslog', () => {
247247
- **Native Safety**: Pass Valgrind/ASAN/ThreadSanitizer
248248
- **Package Management**: pnpm for development, npm for distribution
249249

250+
## AI Agent Development Guidelines
251+
252+
### Containerization Best Practices
253+
The system SHALL prioritize containerization for native binary builds using the following hierarchy:
254+
255+
#### Requirement: Container Tool Preference Hierarchy
256+
When building native binaries, AI Agents SHALL follow this container tool preference:
257+
258+
**WHEN** native binary compilation is required
259+
**THEN** system SHALL attempt Podman first, then Docker as fallback
260+
**AND** provide rootless container support when available
261+
**AND** ensure container environment consistency across all build stages
262+
263+
**WHEN** container runtime selection is needed
264+
**THEN** system SHALL detect available container runtimes
265+
**AND** prefer Podman if available and functional
266+
**AND** fall back to Docker if Podman unavailable
267+
**AND** log runtime selection for debugging purposes
268+
269+
### GitHub Actions and Debugging Guidelines
270+
The system SHALL use GitHub Actions workflows with proper debugging and tracing support:
271+
272+
#### Requirement: GitHub Token Usage for Remote Debugging
273+
WHEN debugging documentation generation or GitHub Actions pipelines
274+
THEN system SHALL use GH_TOKEN from @.env file for remote access
275+
AND enable detailed logging and tracing in GitHub Actions
276+
AND provide step-by-step debugging information in workflow outputs
277+
AND ensure proper secret management and security practices
278+
279+
#### Requirement: Documentation Build Debugging
280+
WHEN troubleshooting documentation generation issues
281+
THEN system SHALL enable verbose logging in documentation build process
282+
AND capture build artifacts for analysis
283+
AND provide clear error messages with actionable steps
284+
AND maintain build environment isolation for reproducible debugging
285+
286+
### GitHub Actions Pipeline Design
287+
The system SHALL follow minimalistic, job-based GitHub Actions pipeline design:
288+
289+
#### Requirement: Job-Based Pipeline Architecture
290+
WHEN designing GitHub Actions workflows
291+
THEN system SHALL organize pipelines by logical job groups
292+
AND create separate jobs for distinct concerns (build, test, deploy)
293+
AND avoid shell script generation when possible
294+
AND use GitHub Actions marketplace actions for common tasks
295+
AND ensure job dependencies are clearly defined
296+
297+
#### Requirement: Binary Artifact Management
298+
WHEN workflows need to share native binaries
299+
THEN system SHALL use GitHub Actions artifacts for binary transfer
300+
AND ensure artifact naming includes platform and version information
301+
AND validate artifact integrity before use in subsequent jobs
302+
AND provide artifact cleanup mechanisms to prevent storage bloat
303+
304+
### Documentation System Guidelines
305+
The system SHALL follow documentation generation best practices:
306+
307+
#### Requirement: Jekyll Standalone Build
308+
WHEN building documentation
309+
THEN system SHALL treat Jekyll as standalone documentation builder
310+
AND use just-the-docs theme for professional presentation
311+
AND build complete documentation site without GitHub Pages defaults
312+
AND deploy to gh-pages branch via special workflow
313+
314+
#### Requirement: Self-Contained Documentation
315+
WHEN generating documentation
316+
THEN system SHALL build entire documentation site from source
317+
AND avoid GitHub Pages automatic processing
318+
AND use custom Jekyll configuration with theme
319+
AND ensure all assets are properly included in build output
320+
321+
### Node.js Native Module Best Practices
322+
The system SHALL follow established patterns from well-known Node.js native modules:
323+
324+
#### Requirement: Best Practice Compliance
325+
WHEN implementing native module features
326+
THEN system SHALL reference similar established Node.js native modules
327+
AND follow their patterns for error handling, memory management, and API design
328+
AND ensure compatibility with Node.js N-API standards
329+
AND validate against common native module testing patterns
330+
331+
#### Requirement: Cross-Platform Considerations
332+
WHEN designing native module interfaces
333+
THEN system SHALL consider platform-specific requirements
334+
AND provide clear error messages for unsupported platforms
335+
AND ensure graceful degradation when features are unavailable
336+
AND document platform-specific behavior and limitations
337+
250338
## External Dependencies
251339

252340
### System Dependencies (Runtime)

0 commit comments

Comments
 (0)