linkedin-agent-cli 0.1.0__tar.gz → 0.1.6__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.
Files changed (36) hide show
  1. linkedin_agent_cli-0.1.6/.github/workflows/publish.yml +53 -0
  2. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/PKG-INFO +17 -1
  3. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/README.md +16 -0
  4. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/pyproject.toml +6 -2
  5. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/.gitignore +0 -0
  6. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/LICENSE +0 -0
  7. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/llms.txt +0 -0
  8. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/__init__.py +0 -0
  9. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/actions/__init__.py +0 -0
  10. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/actions/connect.py +0 -0
  11. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/actions/conversations.py +0 -0
  12. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/actions/message.py +0 -0
  13. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/actions/profile.py +0 -0
  14. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/actions/search.py +0 -0
  15. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/actions/status.py +0 -0
  16. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/api/__init__.py +0 -0
  17. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/api/client.py +0 -0
  18. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/api/messaging/__init__.py +0 -0
  19. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/api/messaging/conversations.py +0 -0
  20. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/api/messaging/send.py +0 -0
  21. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/api/messaging/utils.py +0 -0
  22. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/api/voyager.py +0 -0
  23. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/auth.py +0 -0
  24. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/browser/__init__.py +0 -0
  25. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/browser/login.py +0 -0
  26. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/browser/nav.py +0 -0
  27. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/cli.py +0 -0
  28. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/conf.py +0 -0
  29. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/enums.py +0 -0
  30. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/exceptions.py +0 -0
  31. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/launcher.py +0 -0
  32. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/page_state.py +0 -0
  33. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/session.py +0 -0
  34. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/setup/__init__.py +0 -0
  35. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/setup/self_profile.py +0 -0
  36. {linkedin_agent_cli-0.1.0 → linkedin_agent_cli-0.1.6}/src/linkedin_cli/url_utils.py +0 -0
@@ -0,0 +1,53 @@
1
+ name: Publish to PyPI
2
+
3
+ # Publishes a fresh STABLE release on every push to main: the version is
4
+ # 0.1.<commit-count>, which is monotonic (commit count only grows), unique per
5
+ # commit, and a final release (no .dev/pre-release segment), so a plain
6
+ # `pip install linkedin-agent-cli` picks it up immediately. Push a vX.Y.Z tag
7
+ # to cut a deliberate minor/major bump instead. skip-existing makes re-runs
8
+ # idempotent.
9
+
10
+ on:
11
+ push:
12
+ branches: [main]
13
+ tags: ["v*"]
14
+
15
+ jobs:
16
+ publish:
17
+ runs-on: ubuntu-latest
18
+ environment: pypi
19
+ permissions:
20
+ id-token: write # OIDC token for PyPI Trusted Publishing
21
+ steps:
22
+ - uses: actions/checkout@v4
23
+ with:
24
+ fetch-depth: 0 # full history so the commit count is correct
25
+
26
+ - uses: actions/setup-python@v5
27
+ with:
28
+ python-version: "3.12"
29
+
30
+ - name: Compute version
31
+ id: ver
32
+ run: |
33
+ if [ "${{ github.ref_type }}" = "tag" ]; then
34
+ VERSION="${GITHUB_REF_NAME#v}" # vX.Y.Z -> X.Y.Z
35
+ else
36
+ VERSION="0.1.$(git rev-list --count HEAD)"
37
+ fi
38
+ echo "version=$VERSION" >> "$GITHUB_OUTPUT"
39
+ echo "Publishing version $VERSION"
40
+
41
+ - name: Build sdist + wheel
42
+ env:
43
+ # hatch-vcs honours this PRETEND var, overriding the git-derived version
44
+ # at build time. Safe here because CI builds only this one package.
45
+ SETUPTOOLS_SCM_PRETEND_VERSION: ${{ steps.ver.outputs.version }}
46
+ run: |
47
+ python -m pip install --upgrade build
48
+ python -m build
49
+
50
+ - name: Publish to PyPI
51
+ uses: pypa/gh-action-pypi-publish@release/v1
52
+ with:
53
+ skip-existing: true
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: linkedin-agent-cli
3
- Version: 0.1.0
3
+ Version: 0.1.6
4
4
  Summary: Django-free library and CLI for LinkedIn platform mechanics over a bound browser session (Voyager API + Playwright).
5
5
  Project-URL: Homepage, https://github.com/eracle/linkedin-cli
6
6
  Project-URL: Repository, https://github.com/eracle/linkedin-cli
@@ -178,6 +178,22 @@ The discovery → outreach loop an agent runs: **`search` → `profile` / `statu
178
178
  `checkpoint_challenge`, `authentication`, `profile_inaccessible`,
179
179
  `skip_profile`, `connection_limit`.
180
180
 
181
+ ## 🔖 Releases
182
+
183
+ Releases are **fully automated** — there is no manual publish step.
184
+
185
+ - **Every push to `main`** triggers the `publish.yml` GitHub Actions workflow, which builds
186
+ and uploads a stable `0.1.<commit-count>` release to PyPI via
187
+ [Trusted Publishing](https://docs.pypi.org/trusted-publishers/) (OIDC, no stored token).
188
+ The version is monotonic and unique per commit, so `pip install -U linkedin-agent-cli`
189
+ always picks up the latest push.
190
+ - **Deliberate minor/major bumps:** push a `vX.Y.Z` tag — that commit publishes exactly
191
+ `X.Y.Z` (e.g. `git tag v0.2.0 && git push origin v0.2.0`).
192
+
193
+ The version is injected at build time (`SETUPTOOLS_SCM_PRETEND_VERSION`); `hatch-vcs`
194
+ derives the version from git for local/`git+`-installed builds. Re-runs are idempotent
195
+ (`skip-existing`).
196
+
181
197
  ## ⚠️ Responsible use
182
198
 
183
199
  This tool automates **your own** LinkedIn account from **your own** machine.
@@ -152,6 +152,22 @@ The discovery → outreach loop an agent runs: **`search` → `profile` / `statu
152
152
  `checkpoint_challenge`, `authentication`, `profile_inaccessible`,
153
153
  `skip_profile`, `connection_limit`.
154
154
 
155
+ ## 🔖 Releases
156
+
157
+ Releases are **fully automated** — there is no manual publish step.
158
+
159
+ - **Every push to `main`** triggers the `publish.yml` GitHub Actions workflow, which builds
160
+ and uploads a stable `0.1.<commit-count>` release to PyPI via
161
+ [Trusted Publishing](https://docs.pypi.org/trusted-publishers/) (OIDC, no stored token).
162
+ The version is monotonic and unique per commit, so `pip install -U linkedin-agent-cli`
163
+ always picks up the latest push.
164
+ - **Deliberate minor/major bumps:** push a `vX.Y.Z` tag — that commit publishes exactly
165
+ `X.Y.Z` (e.g. `git tag v0.2.0 && git push origin v0.2.0`).
166
+
167
+ The version is injected at build time (`SETUPTOOLS_SCM_PRETEND_VERSION`); `hatch-vcs`
168
+ derives the version from git for local/`git+`-installed builds. Re-runs are idempotent
169
+ (`skip-existing`).
170
+
155
171
  ## ⚠️ Responsible use
156
172
 
157
173
  This tool automates **your own** LinkedIn account from **your own** machine.
@@ -1,10 +1,10 @@
1
1
  [build-system]
2
- requires = ["hatchling"]
2
+ requires = ["hatchling", "hatch-vcs"]
3
3
  build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "linkedin-agent-cli"
7
- version = "0.1.0"
7
+ dynamic = ["version"]
8
8
  description = "Django-free library and CLI for LinkedIn platform mechanics over a bound browser session (Voyager API + Playwright)."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -40,5 +40,9 @@ Issues = "https://github.com/eracle/linkedin-cli/issues"
40
40
  [project.scripts]
41
41
  linkedin-cli = "linkedin_cli.cli:main"
42
42
 
43
+ [tool.hatch.version]
44
+ source = "vcs"
45
+ raw-options = { local_scheme = "no-local-version" }
46
+
43
47
  [tool.hatch.build.targets.wheel]
44
48
  packages = ["src/linkedin_cli"]