Skip to content

Commit b5fdfaf

Browse files
committed
feat: init v3
0 parents  commit b5fdfaf

42 files changed

Lines changed: 3894 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.agnix.toml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
severity = "Warning"
2+
exclude = [
3+
"node_modules/**",
4+
".git/**",
5+
"target/**",
6+
]
7+
target = "Generic"
8+
tools = []
9+
max_files_to_validate = 10000
10+
11+
[rules]
12+
skills = true
13+
hooks = true
14+
agents = true
15+
memory = true
16+
plugins = true
17+
xml = true
18+
mcp = true
19+
imports = true
20+
cross_platform = true
21+
agents_md = true
22+
copilot = true
23+
cursor = true
24+
cline = true
25+
opencode = true
26+
gemini_md = true
27+
codex = true
28+
roo_code = true
29+
windsurf = true
30+
kiro_steering = true
31+
kiro_agents = true
32+
amp_checks = true
33+
prompt_engineering = true
34+
generic_instructions = true
35+
frontmatter_validation = true
36+
xml_balance = true
37+
import_references = true
38+
disabled_rules = ["CDX-AG-005"]
39+
disabled_validators = []
40+
41+
[tool_versions]
42+
43+
[spec_revisions]
44+
45+
[files]
46+
include_as_memory = []
47+
include_as_generic = []
48+
exclude = []

.github/workflows/ci.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: ["main", "master"]
6+
tags: ["v*"]
7+
pull_request:
8+
branches: ["main", "master"]
9+
workflow_dispatch:
10+
11+
env:
12+
CARGO_TERM_COLOR: always
13+
14+
jobs:
15+
ci:
16+
name: Lint Test Build
17+
runs-on: ubuntu-latest
18+
steps:
19+
- uses: actions/checkout@v6
20+
21+
- uses: dtolnay/rust-toolchain@nightly
22+
with:
23+
components: rustfmt, clippy
24+
25+
- uses: taiki-e/install-action@v2
26+
with:
27+
tool: just,cargo-machete,taplo-cli,typos-cli,rumdl
28+
29+
- name: CI
30+
run: just ci

.github/workflows/release.yml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- "v*.*.*"
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
release:
13+
name: Release
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Checkout
17+
uses: actions/checkout@v6
18+
with:
19+
fetch-depth: 0
20+
21+
- name: Install Rust
22+
uses: dtolnay/rust-toolchain@stable
23+
24+
- uses: taiki-e/install-action@v2
25+
with:
26+
tool: just
27+
28+
- name: Get version from tag
29+
id: tag_version
30+
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> "$GITHUB_ENV"
31+
32+
- name: Check Cargo.toml version
33+
run: |
34+
CARGO_VERSION="$(awk '
35+
$0 == "[workspace.package]" { in_section = 1; next }
36+
in_section && $1 == "version" {
37+
gsub(/"/, "", $3)
38+
print $3
39+
exit
40+
}
41+
in_section && /^\[/ { exit }
42+
' Cargo.toml)"
43+
44+
if [ -z "$CARGO_VERSION" ]; then
45+
echo "Error: failed to parse workspace.package.version from Cargo.toml"
46+
exit 1
47+
fi
48+
49+
echo "Cargo version: $CARGO_VERSION"
50+
echo "Tag version: ${{ env.VERSION }}"
51+
52+
if [ "$CARGO_VERSION" != "${{ env.VERSION }}" ]; then
53+
echo "Error: Cargo.toml version ($CARGO_VERSION) does not match tag version (${{ env.VERSION }})"
54+
exit 1
55+
fi
56+
57+
- name: Generate Changelog
58+
uses: orhun/git-cliff-action@v4
59+
id: git-cliff
60+
with:
61+
config: cliff.toml
62+
args: --verbose --latest --strip header
63+
env:
64+
OUTPUT: CHANGELOG.md
65+
66+
- name: Create Release
67+
uses: softprops/action-gh-release@v2
68+
with:
69+
body: ${{ steps.git-cliff.outputs.content }}
70+
prerelease: ${{ contains(github.ref, 'alpha') || contains(github.ref, 'beta') }}
71+
72+
- name: Publish to crates.io
73+
run: just publish
74+
env:
75+
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}

.gitignore

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Rust
2+
/target/
3+
Cargo.lock
4+
5+
# IDE
6+
.idea/
7+
.vscode/
8+
*.swp
9+
*.swo
10+
*~
11+
12+
# OS
13+
.DS_Store
14+
Thumbs.db
15+
16+
# Build artifacts
17+
*.wasm
18+
pkg/
19+
20+
# Node/Bun (if using for Tailwind)
21+
node_modules/
22+
bun.lockb
23+
24+
# Environment
25+
.env
26+
.env.local
27+
.env.*.local
28+
29+
# Leptos
30+
/site/
31+
.rumdl_cache/

.rumdl.toml

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# rumdl configuration file
2+
3+
# Global configuration options
4+
[global]
5+
# List of rules to disable (uncomment and modify as needed)
6+
disable = ["MD013", "MD033", "MD041", "MD036"]
7+
8+
# List of rules to enable exclusively (if provided, only these rules will run)
9+
# enable = ["MD001", "MD003", "MD004"]
10+
11+
# List of file/directory patterns to include for linting (if provided, only these will be linted)
12+
# include = [
13+
# "docs/*.md",
14+
# "src/**/*.md",
15+
# "README.md"
16+
# ]
17+
18+
# List of file/directory patterns to exclude from linting
19+
exclude = [
20+
# Common directories to exclude
21+
".git",
22+
".github",
23+
"node_modules",
24+
"vendor",
25+
"dist",
26+
"build",
27+
"target",
28+
29+
# Specific files or patterns
30+
"CHANGELOG.md",
31+
"LICENSE.md",
32+
]
33+
34+
# Respect .gitignore files when scanning directories (default: true)
35+
respect-gitignore = true
36+
37+
# Markdown flavor/dialect (uncomment to enable)
38+
# Options: standard (default), gfm, commonmark, mkdocs, mdx, quarto
39+
# flavor = "mkdocs"
40+
41+
# Rule-specific configurations (uncomment and modify as needed)
42+
43+
# [MD003]
44+
# style = "atx" # Heading style (atx, atx_closed, setext)
45+
46+
# [MD004]
47+
# style = "asterisk" # Unordered list style (asterisk, plus, dash, consistent)
48+
49+
# [MD007]
50+
# indent = 4 # Unordered list indentation
51+
52+
[MD013]
53+
line-length = 500 # Line length
54+
# code-blocks = false # Exclude code blocks from line length check
55+
# tables = false # Exclude tables from line length check
56+
# headings = true # Include headings in line length check
57+
58+
# [MD044]
59+
# names = ["rumdl", "Markdown", "GitHub"] # Proper names that should be capitalized correctly
60+
# code-blocks = false # Check code blocks for proper names (default: false, skips code blocks)

.rustfmt.toml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
unstable_features = true
2+
newline_style = "Unix"
3+
imports_granularity = "Crate"
4+
group_imports = "StdExternalCrate"
5+
reorder_imports = true
6+
normalize_comments = true
7+
normalize_doc_attributes = true
8+
format_code_in_doc_comments = true
9+
use_field_init_shorthand = true
10+
use_small_heuristics = "Max"
11+
comment_width = 100
12+
doc_comment_code_block_width = 100
13+
wrap_comments = true
14+
binop_separator = "Back"
15+
trailing_comma = "Vertical"
16+
trailing_semicolon = false

.taplo.toml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
## https://taplo.tamasfe.dev/configuration/file.html
2+
3+
include = ["**/Cargo.toml"]
4+
5+
[formatting]
6+
# Align consecutive entries vertically.
7+
align_entries = false
8+
# Append trailing commas for multi-line arrays.
9+
array_trailing_comma = true
10+
# Expand arrays to multiple lines that exceed the maximum column width.
11+
array_auto_expand = true
12+
# Collapse arrays that don't exceed the maximum column width and don't contain comments.
13+
array_auto_collapse = false
14+
# Omit white space padding from single-line arrays
15+
compact_arrays = true
16+
# Omit white space padding from the start and end of inline tables.
17+
compact_inline_tables = false
18+
# Maximum column width in characters, affects array expansion and collapse, this doesn't take whitespace into account.
19+
# Note that this is not set in stone, and works on a best-effort basis.
20+
# column_width = 120
21+
# Indent based on tables and arrays of tables and their subtables, subtables out of order are not indented.
22+
indent_tables = false
23+
# The substring that is used for indentation, should be tabs or spaces (but technically can be anything).
24+
indent_string = ' '
25+
# Add trailing newline at the end of the file if not present.
26+
trailing_newline = true
27+
# Alphabetically reorder keys that are not separated by empty lines.
28+
reorder_keys = false
29+
# Maximum amount of allowed consecutive blank lines. This does not affect the whitespace at the end of the document, as it is always stripped.
30+
allowed_blank_lines = 1
31+
# Use CRLF for line endings.
32+
crlf = false
33+
34+
[[rule]]
35+
keys = [
36+
"build-dependencies",
37+
"dependencies",
38+
"dev-dependencies",
39+
"workspace.dependencies",
40+
"features"
41+
]
42+
formatting = { reorder_keys = true }
43+
44+
[[rule]]
45+
keys = ["package"]
46+
formatting = { reorder_keys = false }

.typos.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
[files]
2+
extend-exclude = ["specs/**"]

0 commit comments

Comments
 (0)