Instructions to use hipinis/20260718 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use hipinis/20260718 with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf hipinis/20260718:Q8_0 # Run inference directly in the terminal: llama cli -hf hipinis/20260718:Q8_0
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf hipinis/20260718:Q8_0 # Run inference directly in the terminal: llama cli -hf hipinis/20260718:Q8_0
Build from source code
git clone https://github.com/ggml-org/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-app # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama serve -hf hipinis/20260718:Q8_0 # Run inference directly in the terminal: ./build/bin/llama cli -hf hipinis/20260718:Q8_0
Use Docker
docker model run hf.co/hipinis/20260718:Q8_0
- Llama new
- LM Studio
- Jan
- Ollama
How to use hipinis/20260718 with Ollama:
ollama run hf.co/hipinis/20260718:Q8_0
- Unsloth Desktop
- Pi
How to use hipinis/20260718 with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf hipinis/20260718:Q8_0
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "hipinis/20260718:Q8_0" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use hipinis/20260718 with Docker Model Runner:
docker model run hf.co/hipinis/20260718:Q8_0
- Lemonade
How to use hipinis/20260718 with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull hipinis/20260718:Q8_0
Run and chat with the model
lemonade run user.20260718-Q8_0
List all available models
lemonade list
- Hermes Agent
How to use hipinis/20260718 with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf hipinis/20260718:Q8_0
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default hipinis/20260718:Q8_0
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use hipinis/20260718 with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf hipinis/20260718:Q8_0
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "hipinis/20260718:Q8_0" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
Download custom_nodes/ComfyUI-Manager/tests/test_install_flags_structural.py from hipinis/20260718: direct link, hf CLI and curl.
- Browser
- Download file 5.83 kB
-
https://huggingface.co/hipinis/20260718/resolve/main/custom_nodes/ComfyUI-Manager/tests/test_install_flags_structural.py
- Command line
-
hf download hf://hipinis/20260718/custom_nodes/ComfyUI-Manager/tests/test_install_flags_structural.py
-
curl -L -o test_install_flags_structural.py https://huggingface.co/hipinis/20260718/resolve/main/custom_nodes/ComfyUI-Manager/tests/test_install_flags_structural.py
5.83 kB
| """Structural (grep/AST) guards for the dedicated install flags. | |
| Cheap source-level guards that complement the behavioral tests: | |
| - Frontend 403 copy: both install surfaces in js/common.js name their | |
| responsible flag, and the generic fallback copy stays unchanged. | |
| - No new HTTP install surface is added. | |
| - cm-cli stays an ungated local operator tool. | |
| - The migration module never references the flags (no auto-seed — | |
| explicit opt-in only). | |
| Harness: read/grep + AST over glob/*.py, cm-cli.py and js/*.js. No | |
| imports of `glob/` modules (the dir name shadows stdlib glob). | |
| """ | |
| import re | |
| import unittest | |
| from pathlib import Path | |
| REPO_ROOT = Path(__file__).resolve().parent.parent | |
| MANAGER_SERVER_PATH = REPO_ROOT / "glob" / "manager_server.py" | |
| MANAGER_MIGRATION_PATH = REPO_ROOT / "glob" / "manager_migration.py" | |
| CM_CLI_PATH = REPO_ROOT / "cm-cli.py" | |
| JS_COMMON_PATH = REPO_ROOT / "js" / "common.js" | |
| GENERIC_403_COPY = "This action is not allowed with this security level configuration." | |
| FLAG_TOKENS = ("allow_git_url_install", "allow_pip_install") | |
| def _js_function_block(source, func_name): | |
| """Slice an `export async function <name>` block (up to the next | |
| export or EOF).""" | |
| start = source.find("export async function %s" % func_name) | |
| if start < 0: | |
| raise AssertionError("function %s not found in js source" % func_name) | |
| next_export = source.find("export ", start + 1) | |
| return source[start: next_export if next_export > 0 else len(source)] | |
| def _handle403_call_args(source): | |
| """All handle403Response(...) CALL argument strings (def/import lines | |
| excluded).""" | |
| calls = [] | |
| for match in re.finditer(r"handle403Response\s*\(([^()]*(?:\([^()]*\)[^()]*)*)\)", source): | |
| line_start = source.rfind("\n", 0, match.start()) + 1 | |
| line = source[line_start: source.find("\n", match.start())] | |
| if "function handle403Response" in line or line.lstrip().startswith("import"): | |
| continue | |
| calls.append(match.group(1).strip()) | |
| return calls | |
| class JsCopyStructuralTest(unittest.TestCase): | |
| """Frontend honest-copy contract.""" | |
| def setUpClass(cls): | |
| cls.common_src = JS_COMMON_PATH.read_text() | |
| def test_surface_messages_name_their_flag(self): | |
| """Both install 403 branches pass a flag-naming defaultMessage.""" | |
| for func, flag in ( | |
| ("install_via_git_url", "allow_git_url_install"), | |
| ("install_pip", "allow_pip_install"), | |
| ): | |
| with self.subTest(func=func): | |
| block = _js_function_block(self.common_src, func) | |
| two_arg_calls = [a for a in _handle403_call_args(block) if "," in a] | |
| self.assertTrue( | |
| two_arg_calls, | |
| "%s must call handle403Response with a defaultMessage" % func, | |
| ) | |
| self.assertIn(flag, block) | |
| self.assertIn("config.ini", block) | |
| def test_generic_fallback_and_frozen_callers_unchanged(self): | |
| """The generic fallback copy stays (exactly its two occurrences in | |
| handle403Response), and no other handle403Response caller across | |
| js/ gains a defaultMessage.""" | |
| self.assertEqual(self.common_src.count(GENERIC_403_COPY), 2) | |
| surface_blocks = "".join( | |
| _js_function_block(self.common_src, name) | |
| for name in ("install_pip", "install_via_git_url") | |
| ) | |
| allowed_two_arg = {a for a in _handle403_call_args(surface_blocks) if "," in a} | |
| for js_file in sorted((REPO_ROOT / "js").glob("*.js")): | |
| source = js_file.read_text() | |
| for args in _handle403_call_args(source): | |
| if "," in args: | |
| self.assertIn( | |
| args, allowed_two_arg, | |
| "frozen handle403Response caller in %s gained a " | |
| "defaultMessage: handle403Response(%s)" % (js_file.name, args), | |
| ) | |
| class StructuralSecurityGuardsTest(unittest.TestCase): | |
| """Source-level guards against scope bleed.""" | |
| def test_no_new_install_route_surface(self): | |
| """No new HTTP surface for git-URL/pip install.""" | |
| source = MANAGER_SERVER_PATH.read_text() | |
| routes = set(re.findall(r"@routes\.post\(\"([^\"]+)\"\)", source)) | |
| expected_surfaces = { | |
| "/customnode/install/git_url", | |
| "/customnode/install/pip", | |
| "/manager/queue/install", | |
| "/manager/queue/reinstall", | |
| } | |
| self.assertTrue(expected_surfaces.issubset(routes)) | |
| install_like = {r for r in routes if "install" in r} | |
| self.assertEqual( | |
| install_like, | |
| expected_surfaces | |
| | {"/manager/queue/uninstall", "/manager/queue/install_model"}, | |
| "install-like route set drifted — no new install surface allowed", | |
| ) | |
| def test_cm_cli_ungated(self): | |
| """cm-cli stays a local operator tool — no gate, no flag lookup.""" | |
| source = CM_CLI_PATH.read_text() | |
| for token in FLAG_TOKENS + ("is_allowed_security_level", "is_dedicated_install_allowed"): | |
| self.assertNotIn(token, source, "cm-cli.py must stay ungated") | |
| def test_no_autoseed_in_migration(self): | |
| """The migration module never references the flags (explicit | |
| opt-in only — no auto-seed from security_level).""" | |
| source = MANAGER_MIGRATION_PATH.read_text() | |
| for token in FLAG_TOKENS: | |
| self.assertNotIn( | |
| token, source, | |
| "manager_migration.py must not seed/translate the new flags", | |
| ) | |
| if __name__ == "__main__": | |
| unittest.main(verbosity=2) | |