stackprep-pro 0.2.2__tar.gz → 0.2.4__tar.gz
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.
- stackprep_pro-0.2.4/.github/workflows/publish.yml +51 -0
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/PKG-INFO +1 -1
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/pyproject.toml +1 -1
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/src/stackprep_pro/server.py +4 -3
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/src/stackprep_pro/skills/certification.md +6 -14
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/src/stackprep_pro/skills/interview.md +5 -12
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/uv.lock +1 -1
- stackprep_pro-0.2.2/.github/workflows/publish.yml +0 -46
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/.claude/settings.json +0 -0
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/.githooks/pre-commit +0 -0
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/.gitignore +0 -0
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/.mcp.json +0 -0
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/README.md +0 -0
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/scripts/bump_version.sh +0 -0
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/scripts/generate_readme.py +0 -0
- {stackprep_pro-0.2.2 → stackprep_pro-0.2.4}/src/stackprep_pro/__init__.py +0 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
name: Publish to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- main
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
publish:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
environment: pypi
|
|
12
|
+
permissions:
|
|
13
|
+
id-token: write
|
|
14
|
+
contents: write
|
|
15
|
+
|
|
16
|
+
steps:
|
|
17
|
+
- uses: actions/checkout@v5
|
|
18
|
+
|
|
19
|
+
- name: Get version from pyproject.toml
|
|
20
|
+
id: version
|
|
21
|
+
run: |
|
|
22
|
+
echo "VERSION=$(grep '^version' pyproject.toml | sed 's/version = "\(.*\)"/\1/')" >> $GITHUB_OUTPUT
|
|
23
|
+
|
|
24
|
+
- name: Check if tag already exists
|
|
25
|
+
id: tag_check
|
|
26
|
+
run: |
|
|
27
|
+
if git ls-remote --tags origin "refs/tags/v${{ steps.version.outputs.VERSION }}" | grep -q .; then
|
|
28
|
+
echo "EXISTS=true" >> $GITHUB_OUTPUT
|
|
29
|
+
else
|
|
30
|
+
echo "EXISTS=false" >> $GITHUB_OUTPUT
|
|
31
|
+
fi
|
|
32
|
+
|
|
33
|
+
- name: Tag version
|
|
34
|
+
if: steps.tag_check.outputs.EXISTS == 'false'
|
|
35
|
+
run: |
|
|
36
|
+
git config user.name "github-actions[bot]"
|
|
37
|
+
git config user.email "github-actions[bot]@users.noreply.github.com"
|
|
38
|
+
git tag "v${{ steps.version.outputs.VERSION }}"
|
|
39
|
+
git push origin "v${{ steps.version.outputs.VERSION }}"
|
|
40
|
+
|
|
41
|
+
- name: Install uv
|
|
42
|
+
if: steps.tag_check.outputs.EXISTS == 'false'
|
|
43
|
+
uses: astral-sh/setup-uv@v8.2.0
|
|
44
|
+
|
|
45
|
+
- name: Build
|
|
46
|
+
if: steps.tag_check.outputs.EXISTS == 'false'
|
|
47
|
+
run: uv build
|
|
48
|
+
|
|
49
|
+
- name: Publish to PyPI
|
|
50
|
+
if: steps.tag_check.outputs.EXISTS == 'false'
|
|
51
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: stackprep-pro
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.4
|
|
4
4
|
Summary: stackprep-pro — interview & certification prep MCP server for any AI client
|
|
5
5
|
Project-URL: Homepage, https://github.com/youngpada1/stackprep-pro
|
|
6
6
|
Project-URL: Repository, https://github.com/youngpada1/stackprep-pro
|
|
@@ -213,9 +213,10 @@ def end_session(session_id: str) -> str:
|
|
|
213
213
|
"Auto-detected study topics:",
|
|
214
214
|
topics_list,
|
|
215
215
|
"",
|
|
216
|
-
"Generate a Study Plan now (see skill rules), then
|
|
217
|
-
' "Want to add any extra topics to your study pack before I save it?"',
|
|
218
|
-
|
|
216
|
+
"Generate a Study Plan now (see skill rules), then:",
|
|
217
|
+
' 1. Ask the user: "Want to add any extra topics to your study pack before I save it?"',
|
|
218
|
+
' 2. Ask the user: "What would you like to name this study pack? (e.g. snowpro-core-week1)"',
|
|
219
|
+
' 3. Call save_study_pack(session_id=\'{}\', name=<name the user chose>, content=<generated pack>)'.format(session_id),
|
|
219
220
|
])
|
|
220
221
|
|
|
221
222
|
|
|
@@ -69,21 +69,13 @@ When `end_session` is called, the server shows the auto-detected topics and asks
|
|
|
69
69
|
|
|
70
70
|
The user can say no or list extras, then call `save_study_pack` with a chosen name to persist it to disk.
|
|
71
71
|
|
|
72
|
-
**Pack format** —
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
"topic": "",
|
|
78
|
-
"official_docs": [{"title": "", "url": ""}],
|
|
79
|
-
"videos": [{"title": "", "url": ""}],
|
|
80
|
-
"exam_prep": [{"title": "", "url": ""}],
|
|
81
|
-
"summary": ""
|
|
82
|
-
}
|
|
83
|
-
]
|
|
84
|
-
```
|
|
72
|
+
**Pack format** — for each topic, produce a markdown section:
|
|
73
|
+
|
|
74
|
+
- Official docs link (or community source if no official docs exist)
|
|
75
|
+
- Best YouTube / video resource
|
|
76
|
+
- 2–3 sentence summary of what to focus on
|
|
85
77
|
|
|
86
|
-
Use only real, publicly accessible URLs. Never fabricate
|
|
78
|
+
Use only real, publicly accessible URLs. Never fabricate links.
|
|
87
79
|
|
|
88
80
|
## Exit / Study Plan
|
|
89
81
|
|
|
@@ -75,18 +75,11 @@ When `end_session` is called, the server shows the auto-detected topics and asks
|
|
|
75
75
|
|
|
76
76
|
The user can say no or list extras, then call `save_study_pack` with a chosen name to persist it to disk.
|
|
77
77
|
|
|
78
|
-
**Pack format** —
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
"topic": "",
|
|
84
|
-
"official_docs": [{"title": "", "url": ""}],
|
|
85
|
-
"videos": [{"title": "", "url": ""}],
|
|
86
|
-
"exam_prep": [{"title": "", "url": ""}],
|
|
87
|
-
"summary": ""
|
|
88
|
-
}
|
|
89
|
-
]
|
|
78
|
+
**Pack format** — for each topic, produce a markdown section:
|
|
79
|
+
|
|
80
|
+
- Official docs link (or community source if no official docs exist)
|
|
81
|
+
- Best YouTube / video resource
|
|
82
|
+
- 2–3 sentence summary of what to focus on
|
|
90
83
|
```
|
|
91
84
|
|
|
92
85
|
Use only real, publicly accessible URLs. Never fabricate documentation links.
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
name: Publish to PyPI
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches:
|
|
6
|
-
- main
|
|
7
|
-
|
|
8
|
-
jobs:
|
|
9
|
-
publish:
|
|
10
|
-
runs-on: ubuntu-latest
|
|
11
|
-
environment: pypi
|
|
12
|
-
permissions:
|
|
13
|
-
id-token: write
|
|
14
|
-
contents: write
|
|
15
|
-
|
|
16
|
-
steps:
|
|
17
|
-
- uses: actions/checkout@v5
|
|
18
|
-
with:
|
|
19
|
-
token: ${{ secrets.GITHUB_TOKEN }}
|
|
20
|
-
|
|
21
|
-
- name: Bump patch version in pyproject.toml
|
|
22
|
-
id: version
|
|
23
|
-
run: |
|
|
24
|
-
CURRENT=$(grep '^version' pyproject.toml | sed 's/version = "\(.*\)"/\1/')
|
|
25
|
-
IFS='.' read -r MAJOR MINOR PATCH <<< "$CURRENT"
|
|
26
|
-
NEW="$MAJOR.$MINOR.$((PATCH + 1))"
|
|
27
|
-
sed -i "s/^version = \"$CURRENT\"/version = \"$NEW\"/" pyproject.toml
|
|
28
|
-
echo "VERSION=$NEW" >> $GITHUB_OUTPUT
|
|
29
|
-
|
|
30
|
-
- name: Commit and tag new version
|
|
31
|
-
run: |
|
|
32
|
-
git config user.name "github-actions[bot]"
|
|
33
|
-
git config user.email "github-actions[bot]@users.noreply.github.com"
|
|
34
|
-
git add pyproject.toml
|
|
35
|
-
git commit -m "chore: bump version to ${{ steps.version.outputs.VERSION }}"
|
|
36
|
-
git tag "v${{ steps.version.outputs.VERSION }}"
|
|
37
|
-
git push origin main --follow-tags
|
|
38
|
-
|
|
39
|
-
- name: Install uv
|
|
40
|
-
uses: astral-sh/setup-uv@v5
|
|
41
|
-
|
|
42
|
-
- name: Build
|
|
43
|
-
run: uv build
|
|
44
|
-
|
|
45
|
-
- name: Publish to PyPI
|
|
46
|
-
uses: pypa/gh-action-pypi-publish@release/v1
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|