aiwg
Version:
Cognitive architecture for AI-augmented software development with structured memory, ensemble validation, and closed-loop correction. FAIR-aligned artifacts, 84% cost reduction via human-in-the-loop, standards adopted by 100+ organizations.
199 lines (141 loc) • 5.99 kB
Markdown
# No AI Attribution Rules
**Enforcement Level**: CRITICAL
**Scope**: All commits, PRs, documentation, code, and generated content
**Issue**: #295
## Principle
AI tools are tools. A compiler doesn't sign your binary. An IDE doesn't watermark your code. A linter doesn't add "Formatted by ESLint" to every file. AIWG enforces the same standard: the AI assistant produces output, the human owns it.
## Mandatory Rules
### Rule 1: No Attribution in Commits
**FORBIDDEN** (applies to ALL platforms - Claude Code, Codex, Copilot, Cursor, Warp, any AI tool):
```
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: GitHub Copilot <noreply@github.com>
Co-Authored-By: Codex <noreply@openai.com>
Signed-off-by: Claude Code
Signed-off-by: Cursor AI
Generated by Claude Code
Generated by Codex CLI
Generated by Copilot
Written by Claude
Written by AI
```
**REQUIRED**:
```
feat(auth): add token refresh logic
Tokens now auto-refresh 5 minutes before expiry to prevent
session interruptions during long operations.
```
Clean conventional commit. No attribution. No branding.
### Rule 2: No Attribution in Pull Requests
**FORBIDDEN** (any platform, any tool):
```markdown
🤖 Generated with [Claude Code](https://claude.ai/claude-code)
Generated with [Codex](https://openai.com/codex)
Built with GitHub Copilot
Created with Cursor AI
*This PR was created with AI assistance*
*AI-assisted pull request*
```
**REQUIRED**:
```markdown
## Summary
- Add token refresh logic for session continuity
- Handle edge case where refresh token is also expired
## Test plan
- [ ] Verify token refreshes before expiry
- [ ] Verify graceful handling of expired refresh tokens
```
### Rule 3: No Attribution in Code
**FORBIDDEN** (any tool, any language):
```typescript
// Generated by Claude Code
// Generated by Codex
// Generated by Copilot
// AI-assisted implementation
/* Created with Claude Sonnet 4.5 */
/* Written by AI */
// @ai-generated
// @copilot-generated
```
**REQUIRED**:
```typescript
// Code stands on its own. Comments explain WHY, not WHO typed it.
```
### Rule 4: No Attribution in Documentation
**FORBIDDEN**:
```markdown
> This document was generated with AI assistance.
*Written with Claude Code*
<!-- AI-generated content -->
```
**REQUIRED**:
Documentation that stands on its own without meta-commentary about its creation tool.
### Rule 5: No Emoji Branding
**FORBIDDEN**:
```
🤖 AI-generated
✨ Created with Claude
🧠 AI-assisted
```
Emoji used as branding markers waste tokens and add no information.
## Why This Matters
### Token Economics
At scale, attribution adds up:
| Attribution Pattern | Tokens | Per 100 commits |
|-------------------|--------|-----------------|
| `Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>` | ~15 | 1,500 |
| `🤖 Generated with [Claude Code](https://claude.ai/claude-code)` | ~12 | 1,200 |
| Both combined | ~27 | 2,700 |
2,700 wasted tokens per 100 commits. In active development that's daily context pollution.
### Context Window Pollution
Every attribution line persists in:
- `git log` output (loaded for commit style matching)
- PR descriptions (loaded for review context)
- Code comments (loaded when reading files)
- Documentation (loaded via CLAUDE.md references)
These accumulate silently and crowd out actual content.
### Advertising vs Attribution
There is a difference between:
- **Attribution**: Recording who made a decision and why (valuable, keep this)
- **Advertising**: Stamping tool branding on every output (wasteful, remove this)
AIWG provenance tracking (`@.claude/rules/provenance-tracking.md`) handles real attribution through structured records. Commit-level branding serves the tool vendor, not the developer.
## Platform-Universal Enforcement
This rule applies across ALL agentic coding platforms. AIWG is multi-platform and this behavior must be consistent everywhere:
| Platform | How AIWG Enforces |
|----------|------------------|
| **Claude Code** | `.claude/rules/no-attribution.md` + CLAUDE.md conventions |
| **GitHub Copilot** | `.github/copilot-instructions.md` commit section |
| **OpenAI Codex** | `~/.codex/instructions.md` conventions |
| **Cursor** | `.cursor/rules/` conventions |
| **Warp** | `WARP.md` conventions section |
| **Factory AI** | `.factory/` agent definitions |
| **Any future platform** | AIWG regeneration includes this rule |
When `aiwg use` or `aiwg regenerate` runs for any platform, the generated context file MUST include no-attribution conventions.
## Integration
### CLAUDE.md Template
Every AIWG-generated CLAUDE.md MUST include:
```markdown
## Commit Conventions
- Follow conventional commits: `type(scope): subject`
- **No AI attribution** in commits, PRs, docs, or code
- Use imperative mood ("add feature" not "added feature")
- No Co-Authored-By lines from any AI tool
- No "Generated with" or "Written by" branding from any platform
- The AI is a tool, not an author
```
### All Platform Context Files
Every platform-specific context file generated by AIWG MUST include equivalent instructions. The exact wording varies by platform, but the rule is the same: zero tool branding in output.
### Agent Definitions
All agents across all platforms MUST follow these rules. No agent definition should instruct adding attribution to any output. This includes AIWG's own agents - AIWG itself does not brand the code it helps produce.
### aiwg new Scaffolding
The `aiwg new` command MUST include this rule in the generated project's context files for all configured platforms.
## Exceptions
**None.** If a user explicitly wants attribution, they can add it themselves. The default must be zero attribution. No platform, no tool, no agent overrides this.
## References
- @.claude/rules/provenance-tracking.md - Real attribution via structured provenance
- @CLAUDE.md - Project commit conventions
**Rule Status**: ACTIVE
**Last Updated**: 2026-02-06