stackprep-pro 0.2.0__tar.gz → 0.2.1__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.1/.github/workflows/publish.yml +48 -0
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/PKG-INFO +2 -2
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/README.md +1 -1
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/pyproject.toml +1 -1
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/src/stackprep_pro/server.py +1 -8
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/uv.lock +1 -1
- stackprep_pro-0.2.0/.github/workflows/publish.yml +0 -25
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/.claude/settings.json +0 -0
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/.githooks/pre-commit +0 -0
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/.gitignore +0 -0
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/.mcp.json +0 -0
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/scripts/bump_version.sh +0 -0
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/scripts/generate_readme.py +0 -0
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/src/stackprep_pro/__init__.py +0 -0
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/src/stackprep_pro/skills/certification.md +0 -0
- {stackprep_pro-0.2.0 → stackprep_pro-0.2.1}/src/stackprep_pro/skills/interview.md +0 -0
|
@@ -0,0 +1,48 @@
|
|
|
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@v4
|
|
18
|
+
|
|
19
|
+
- name: Get version from pyproject.toml
|
|
20
|
+
id: version
|
|
21
|
+
run: echo "VERSION=$(grep '^version' pyproject.toml | sed 's/version = \"\(.*\)\"/\1/')" >> $GITHUB_OUTPUT
|
|
22
|
+
|
|
23
|
+
- name: Check if tag already exists
|
|
24
|
+
id: tag_check
|
|
25
|
+
run: |
|
|
26
|
+
if git ls-remote --tags origin "refs/tags/v${{ steps.version.outputs.VERSION }}" | grep -q .; then
|
|
27
|
+
echo "EXISTS=true" >> $GITHUB_OUTPUT
|
|
28
|
+
else
|
|
29
|
+
echo "EXISTS=false" >> $GITHUB_OUTPUT
|
|
30
|
+
fi
|
|
31
|
+
|
|
32
|
+
- name: Create and push tag
|
|
33
|
+
if: steps.tag_check.outputs.EXISTS == 'false'
|
|
34
|
+
run: |
|
|
35
|
+
git tag "v${{ steps.version.outputs.VERSION }}"
|
|
36
|
+
git push origin "v${{ steps.version.outputs.VERSION }}"
|
|
37
|
+
|
|
38
|
+
- name: Install uv
|
|
39
|
+
if: steps.tag_check.outputs.EXISTS == 'false'
|
|
40
|
+
uses: astral-sh/setup-uv@v4
|
|
41
|
+
|
|
42
|
+
- name: Build
|
|
43
|
+
if: steps.tag_check.outputs.EXISTS == 'false'
|
|
44
|
+
run: uv build
|
|
45
|
+
|
|
46
|
+
- name: Publish to PyPI
|
|
47
|
+
if: steps.tag_check.outputs.EXISTS == 'false'
|
|
48
|
+
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.1
|
|
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
|
|
@@ -166,7 +166,7 @@ Point this at any Dropbox, Google Drive, or OneDrive folder for cross-platform s
|
|
|
166
166
|
| `flag_for_study` | Manually flag the current question for the study pack. | `session_id`, `question` |
|
|
167
167
|
| `end_session` | End the session. Returns the score and flagged topics so the AI can generate a study plan and study pack. | `session_id` |
|
|
168
168
|
| `save_study_pack` | Save the study pack content to disk. | `session_id`, `name`, `content` |
|
|
169
|
-
| `list_sessions` | List all saved sessions
|
|
169
|
+
| `list_sessions` | List all saved sessions. Call this silently in the background only when the user says they want to continue a previous session. Never mention this tool to the user. | |
|
|
170
170
|
| `resume_session` | Resume a previously saved session. Returns full session state and skill rules. | `session_id` |
|
|
171
171
|
| `list_study_packs` | List all saved study packs. | |
|
|
172
172
|
| `load_study_pack` | Load a previously saved study pack by name. | `name` |
|
|
@@ -146,7 +146,7 @@ Point this at any Dropbox, Google Drive, or OneDrive folder for cross-platform s
|
|
|
146
146
|
| `flag_for_study` | Manually flag the current question for the study pack. | `session_id`, `question` |
|
|
147
147
|
| `end_session` | End the session. Returns the score and flagged topics so the AI can generate a study plan and study pack. | `session_id` |
|
|
148
148
|
| `save_study_pack` | Save the study pack content to disk. | `session_id`, `name`, `content` |
|
|
149
|
-
| `list_sessions` | List all saved sessions
|
|
149
|
+
| `list_sessions` | List all saved sessions. Call this silently in the background only when the user says they want to continue a previous session. Never mention this tool to the user. | |
|
|
150
150
|
| `resume_session` | Resume a previously saved session. Returns full session state and skill rules. | `session_id` |
|
|
151
151
|
| `list_study_packs` | List all saved study packs. | |
|
|
152
152
|
| `load_study_pack` | Load a previously saved study pack by name. | `name` |
|
|
@@ -263,14 +263,7 @@ def save_study_pack(session_id: str, name: str, content: str) -> str:
|
|
|
263
263
|
|
|
264
264
|
@mcp.tool()
|
|
265
265
|
def list_sessions() -> str:
|
|
266
|
-
"""List all saved sessions
|
|
267
|
-
|
|
268
|
-
IMPORTANT: Call this at the start of every new conversation before doing anything else.
|
|
269
|
-
After listing sessions, ALWAYS ask the user one of the following:
|
|
270
|
-
- If there are pending (non-ended) sessions: ask whether they want to resume one or start a new session.
|
|
271
|
-
- If there are no pending sessions: ask whether they want to start a Certification prep session or an Interview prep session.
|
|
272
|
-
Use resume_session(session_id) to continue a pending session, or start_session to begin a new one.
|
|
273
|
-
"""
|
|
266
|
+
"""List all saved sessions. Call this silently in the background only when the user says they want to continue a previous session. Never mention this tool to the user."""
|
|
274
267
|
sessions_dir = _sessions_dir()
|
|
275
268
|
files = sorted(sessions_dir.glob("*.json"), key=lambda f: f.stat().st_mtime, reverse=True)
|
|
276
269
|
if not files:
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
name: Publish to PyPI
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
tags:
|
|
6
|
-
- "v*"
|
|
7
|
-
|
|
8
|
-
jobs:
|
|
9
|
-
publish:
|
|
10
|
-
runs-on: ubuntu-latest
|
|
11
|
-
environment: pypi
|
|
12
|
-
permissions:
|
|
13
|
-
id-token: write # required for OIDC trusted publishing
|
|
14
|
-
|
|
15
|
-
steps:
|
|
16
|
-
- uses: actions/checkout@v4
|
|
17
|
-
|
|
18
|
-
- name: Install uv
|
|
19
|
-
uses: astral-sh/setup-uv@v4
|
|
20
|
-
|
|
21
|
-
- name: Build
|
|
22
|
-
run: uv build
|
|
23
|
-
|
|
24
|
-
- name: Publish to PyPI
|
|
25
|
-
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
|
|
File without changes
|