minder-cli 0.3.0__tar.gz → 0.3.2__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.
- {minder_cli-0.3.0 → minder_cli-0.3.2}/PKG-INFO +1 -1
- {minder_cli-0.3.0 → minder_cli-0.3.2}/pyproject.toml +1 -1
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/config.py +1 -1
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/nodes/reasoning.py +5 -2
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/llm/local.py +13 -6
- {minder_cli-0.3.0 → minder_cli-0.3.2}/.gitignore +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/LICENSE +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/README.md +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/api/routers/prompts.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/application/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/application/admin/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/application/admin/dto.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/application/admin/jobs.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/application/admin/use_cases.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/auth/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/auth/context.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/auth/middleware.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/auth/principal.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/auth/rate_limiter.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/auth/rbac.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/auth/service.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/bootstrap/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/bootstrap/providers.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/bootstrap/transport.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/cache/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/cache/providers.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/chunking/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/chunking/code_splitter.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/chunking/splitter.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/cli.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/continuity.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/dev.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/embedding/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/embedding/base.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/embedding/local.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/embedding/openai.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/edges.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/executor.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/graph.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/nodes/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/nodes/evaluator.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/nodes/guard.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/nodes/llm.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/nodes/planning.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/nodes/reranker.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/nodes/retriever.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/nodes/verification.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/nodes/workflow_planner.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/runtime.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/graph/state.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/llm/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/llm/base.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/llm/openai.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/base.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/client.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/document.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/error.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/graph.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/history.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/job.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/prompt.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/repository.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/rule.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/session.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/skill.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/user.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/models/workflow.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/observability/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/observability/audit.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/observability/logging.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/observability/metrics.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/observability/tracing.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/admin/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/admin/api.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/admin/context.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/admin/dashboard.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/admin/jobs.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/admin/memories.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/admin/prompts.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/admin/routes.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/admin/runtime.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/admin/search.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/presentation/http/admin/skills.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/prompts/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/prompts/formatter.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/resources/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/retrieval/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/retrieval/hybrid.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/retrieval/mmr.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/retrieval/multi_hop.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/runtime.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/server.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/document.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/error.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/feedback.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/graph.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/history.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/interfaces.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/milvus/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/milvus/client.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/milvus/collections.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/milvus/vector_store.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/mongodb/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/mongodb/client.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/mongodb/indexes.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/mongodb/operational_store.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/relational.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/repo_state.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/rule.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/store/vector.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/auth.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/graph.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/ingest.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/memory.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/query.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/registry.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/repo_scanner.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/search.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/session.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/skills.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/tools/workflow.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/transport/__init__.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/transport/base.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/transport/sse.py +0 -0
- {minder_cli-0.3.0 → minder_cli-0.3.2}/src/minder/transport/stdio.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: minder-cli
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.2
|
|
4
4
|
Summary: Minder CLI is the command-line interface for the Minder self-hosted MCP platform.
|
|
5
5
|
Project-URL: Homepage, https://github.com/hiimtrung/minder
|
|
6
6
|
Project-URL: Repository, https://github.com/hiimtrung/minder
|
|
@@ -42,7 +42,7 @@ class EmbeddingConfig(BaseModel):
|
|
|
42
42
|
class LLMConfig(BaseModel):
|
|
43
43
|
provider: str = "ollama"
|
|
44
44
|
ollama_url: str = "http://localhost:11434"
|
|
45
|
-
ollama_model: str = "
|
|
45
|
+
ollama_model: str = "gemma4:e4b"
|
|
46
46
|
context_length: int = 131072
|
|
47
47
|
temperature: float = 0.1
|
|
48
48
|
openai_api_key: Optional[str] = None
|
|
@@ -9,12 +9,15 @@ from minder.tools.registry import tool_capability_manifest, tool_data_access_pol
|
|
|
9
9
|
|
|
10
10
|
class ReasoningNode:
|
|
11
11
|
def run(self, state: GraphState) -> GraphState:
|
|
12
|
+
reranked = getattr(state, "reranked_docs", []) or []
|
|
13
|
+
retrieved = getattr(state, "retrieved_docs", []) or []
|
|
14
|
+
docs = reranked or retrieved
|
|
12
15
|
sources = [
|
|
13
16
|
{"path": doc["path"], "title": doc["title"], "score": doc["score"]}
|
|
14
|
-
for doc in
|
|
17
|
+
for doc in docs
|
|
15
18
|
]
|
|
16
19
|
snippets = []
|
|
17
|
-
for doc in
|
|
20
|
+
for doc in docs[:3]:
|
|
18
21
|
content = str(doc["content"]).strip()
|
|
19
22
|
snippets.append(f"Source: {doc['path']}\n{content[:240]}")
|
|
20
23
|
|
|
@@ -24,7 +24,7 @@ class LocalModelLLM:
|
|
|
24
24
|
def __init__(
|
|
25
25
|
self,
|
|
26
26
|
ollama_url: str = "http://localhost:11434",
|
|
27
|
-
ollama_model: str = "
|
|
27
|
+
ollama_model: str = "gemma4:e4b",
|
|
28
28
|
fail: bool = False,
|
|
29
29
|
context_length: int = 131072,
|
|
30
30
|
) -> None:
|
|
@@ -53,8 +53,11 @@ class LocalModelLLM:
|
|
|
53
53
|
raise RuntimeError("Local model unavailable")
|
|
54
54
|
|
|
55
55
|
runtime = self.runtime
|
|
56
|
-
|
|
57
|
-
|
|
56
|
+
reranked = getattr(state, "reranked_docs", []) or []
|
|
57
|
+
retrieved = getattr(state, "retrieved_docs", []) or []
|
|
58
|
+
docs = reranked or retrieved
|
|
59
|
+
source_paths = [doc["path"] for doc in docs[:3]]
|
|
60
|
+
guidance = getattr(state, "workflow_context", {}).get("guidance", "")
|
|
58
61
|
fallback = (
|
|
59
62
|
f"{guidance}\n"
|
|
60
63
|
f"Plan intent: {state.plan.get('intent', 'unknown')}.\n"
|
|
@@ -82,8 +85,11 @@ class LocalModelLLM:
|
|
|
82
85
|
raise RuntimeError("Local model unavailable")
|
|
83
86
|
|
|
84
87
|
runtime = self.runtime
|
|
85
|
-
|
|
86
|
-
|
|
88
|
+
reranked = getattr(state, "reranked_docs", []) or []
|
|
89
|
+
retrieved = getattr(state, "retrieved_docs", []) or []
|
|
90
|
+
docs = reranked or retrieved
|
|
91
|
+
source_paths = [doc["path"] for doc in docs[:3]]
|
|
92
|
+
guidance = getattr(state, "workflow_context", {}).get("guidance", "")
|
|
87
93
|
fallback = (
|
|
88
94
|
f"{guidance}\n"
|
|
89
95
|
f"Plan intent: {state.plan.get('intent', 'unknown')}.\n"
|
|
@@ -132,7 +138,8 @@ class LocalModelLLM:
|
|
|
132
138
|
return fallback
|
|
133
139
|
|
|
134
140
|
try:
|
|
135
|
-
|
|
141
|
+
res = self._chat_ollama(prompt, max_tokens=max_tokens, temperature=temperature)
|
|
142
|
+
return res or fallback
|
|
136
143
|
except Exception:
|
|
137
144
|
logger.warning("Ollama completion failed, using fallback")
|
|
138
145
|
return fallback
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|