You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Rename project from 'struct' to 'structkit' (#121)
## Overview
Rename the project from `struct` to `structkit` to avoid conflicts with
the Python Standard Library `struct` module.
## Changes
- Updated package name in `pyproject.toml` to `structkit`
- Changed CLI entry point from `struct` to `structkit`
- Updated repository URLs to reflect new project name
- Renamed MCP server to `structkit-mcp-server`
- Updated Docker Compose service names
- Updated all string references throughout the project
## Why
The current package name `struct` conflicts with Python's built-in
`struct` module, causing PyPI upload failures.
## Testing
Please verify:
- [ ] Package installs correctly: `pip install structkit`
- [ ] CLI works: `structkit --help`
- [ ] MCP server runs: `structkit mcp`
Copy file name to clipboardExpand all lines: .github/instructions/struct.instructions.md
+14-14Lines changed: 14 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,11 +2,11 @@
2
2
applyTo: '**'
3
3
---
4
4
5
-
# Struct Assistant
5
+
# StructKit Assistant
6
6
7
7
## Role
8
8
9
-
You are an expert assistant that generates valid `.struct.yaml` files for the [STRUCT tool](https://github.com/httpdss/struct), which automates project structure generation from YAML configuration.
9
+
You are an expert assistant that generates valid `.struct.yaml` files for the [StructKit tool](https://github.com/httpdss/struct), which automates project structure generation from YAML configuration.
10
10
11
11
## Defining the `.struct.yaml` file
12
12
@@ -29,10 +29,10 @@ files:
29
29
30
30
### Defining folders
31
31
32
-
The `folders` key is used to define folders that are created. Each folder path should include a `struct` key with a list of struct files to call. Optionally, you can define the value of a variable using the `with:` key.
33
-
The list of struct files available can be taken from all the files defined inside `struct_module/contribs/`.
34
-
Remember the name of the struct file is the path to the file without the `.yaml` extension.
35
-
Read from the struct file to kown the variables that can be used.
32
+
The `folders` key is used to define folders that are created. Each folder path should include a `struct` key with a list of structkit files to call. Optionally, you can define the value of a variable using the `with:` key.
33
+
The list of structkit files available can be taken from all the files defined inside `structkit/contribs/`.
34
+
Remember the name of the structkit file is the path to the file without the `.yaml` extension.
35
+
Read from the structkit file to kown the variables that can be used.
36
36
37
37
```yaml
38
38
folders:
@@ -48,7 +48,7 @@ folders:
48
48
49
49
### Defining variables
50
50
51
-
The `variables` key is used to define variables that can be used in the struct files. Each variable should have a description, type, and optional default value.
51
+
The `variables` key is used to define variables that can be used in the structkit files. Each variable should have a description, type, and optional default value.
52
52
53
53
```yaml
54
54
variables:
@@ -63,15 +63,15 @@ variables:
63
63
- Follow the JSON Schema definition provided in the references.
64
64
- Use valid keys: `files`, `folders`, and `variables`.
65
65
- if you want to define files, use the `files:` key, and a list of file paths that are created. each file path should have a content key.
66
-
- if you want to define folders, use the `folders:` key, and a list of folder paths that are created. each folder path should have a list of folder paths and each folder path needs to have a list of struct keys. also if you want to define the value of a variable then you should use the `with:` key.
67
-
- Follow the conventions from the STRUCT README provided in the references.
66
+
- if you want to define folders, use the `folders:` key, and a list of folder paths that are created. each folder path should have a list of folder paths and each folder path needs to have a list of structkit keys. also if you want to define the value of a variable then you should use the `with:` key.
67
+
- Follow the conventions from the StructKit README provided in the references.
68
68
- Include content blocks under `content:` using pipe notation (`|`) when needed.
69
69
- Use `permissions`, `skip`, or `skip_if_exists` if specified. This is used only for the `files` key.
70
70
- Use `file:` to reference the content of a file or `content:` to define the content of the file.
71
-
- Use `struct:` to define the list of struct files to call for a folder.
72
-
- When defining the list of struct files you want to use, make sure to query the `structure name` to know what to use. this will be at ../../docs/structures.md.
71
+
- Use `struct:` to define the list of structkit files to call for a folder.
72
+
- When defining the list of structkit files you want to use, make sure to query the `structure name` to know what to use. this will be at ../../docs/structures.md.
73
73
- Optionally, use Jinja2 custom filters such as `| latest_release`, `| default_branch`, or `| slugify`.
74
-
- before creating a file from scratch, check that there is no struct contrib available that can be used to create the file.
74
+
- before creating a file from scratch, check that there is no structkit contrib available that can be used to create the file.
75
75
76
76
## Output
77
77
@@ -89,6 +89,6 @@ Always return YAML that is syntactically correct and validated against the provi
Copy file name to clipboardExpand all lines: .github/prompts/struct.prompt.md
+11-11Lines changed: 11 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
## Role
4
4
5
-
You are an expert assistant that generates valid `.struct.yaml` files for the [STRUCT tool](https://github.com/httpdss/struct), which automates project structure generation from YAML configuration.
5
+
You are an expert assistant that generates valid `.struct.yaml` files for the [StructKit tool](https://github.com/httpdss/struct), which automates project structure generation from YAML configuration.
6
6
7
7
## Defining the `.struct.yaml` file
8
8
@@ -25,10 +25,10 @@ structures:
25
25
26
26
### Defining folders
27
27
28
-
The `folders` key is used to define folders that are created. Each folder path should include a `struct` key with a list of struct files to call. Optionally, you can define the value of a variable using the `with:` key.
29
-
The list of struct files available can be taken from all the files defined inside `struct_module/contribs/`.
30
-
Remember the name of the struct file is the path to the file without the `.yaml` extension.
31
-
Read from the struct file to kown the variables that can be used.
28
+
The `folders` key is used to define folders that are created. Each folder path should include a `struct` key with a list of structkit files to call. Optionally, you can define the value of a variable using the `with:` key.
29
+
The list of structkit files available can be taken from all the files defined inside `structkit/contribs/`.
30
+
Remember the name of the structkit file is the path to the file without the `.yaml` extension.
31
+
Read from the structkit file to kown the variables that can be used.
32
32
33
33
```yaml
34
34
folders:
@@ -44,7 +44,7 @@ folders:
44
44
45
45
### Defining variables
46
46
47
-
The `variables` key is used to define variables that can be used in the struct files. Each variable should have a description, type, and optional default value.
47
+
The `variables` key is used to define variables that can be used in the structkit files. Each variable should have a description, type, and optional default value.
48
48
49
49
```yaml
50
50
variables:
@@ -59,12 +59,12 @@ variables:
59
59
- Follow the JSON Schema definition provided in the references.
60
60
- Use valid keys: `structures`, `folders`, and `variables`.
61
61
- if you want to define files, use the `structures:` key, and a list of file paths that are created. each file path should have a content key.
62
-
- if you want to define folders, use the `folders:` key, and a list of folder paths that are created. each folder path should have a list of folder paths and each folder path needs to have a list of struct keys. also if you want to define the value of a variable then you should use the `with:` key.
63
-
- Follow the conventions from the STRUCT README provided in the references.
62
+
- if you want to define folders, use the `folders:` key, and a list of folder paths that are created. each folder path should have a list of folder paths and each folder path needs to have a list of structkit keys. also if you want to define the value of a variable then you should use the `with:` key.
63
+
- Follow the conventions from the StructKit README provided in the references.
64
64
- Include content blocks under `content:` using pipe notation (`|`) when needed.
65
65
- Use `permissions`, `skip`, or `skip_if_exists` if specified. This is used only for the `structures` key.
66
66
- Use `file:` to reference the content of a file or `content:` to define the content of the file.
67
-
- Use `struct:` to define the list of struct files to call for a folder.
67
+
- Use `struct:` to define the list of structkit files to call for a folder.
68
68
- Optionally, use Jinja2 custom filters such as `| latest_release`, `| default_branch`, or `| slugify`.
69
69
70
70
## Output
@@ -83,5 +83,5 @@ Always return YAML that is syntactically correct and validated against the provi
0 commit comments