MCPcopy
hub / github.com/stitionai/devika / update_token_usage

Method update_token_usage

src/state.py:156–169  ·  view source on GitHub ↗
(self, project: str, token_usage: int)

Source from the content-addressed store, hash-verified

154 return None
155
156 def update_token_usage(self, project: str, token_usage: int):
157 with Session(self.engine) as session:
158 agent_state = session.query(AgentStateModel).filter(AgentStateModel.project == project).first()
159 if agent_state:
160 state_stack = json.loads(agent_state.state_stack_json)
161 state_stack[-1]["token_usage"] += token_usage
162 agent_state.state_stack_json = json.dumps(state_stack)
163 session.commit()
164 else:
165 state_stack = [self.new_state()]
166 state_stack[-1]["token_usage"] = token_usage
167 agent_state = AgentStateModel(project=project, state_stack_json=json.dumps(state_stack))
168 session.add(agent_state)
169 session.commit()
170
171 def get_latest_token_usage(self, project: str):
172 with Session(self.engine) as session:

Callers 1

Calls 2

new_stateMethod · 0.95
AgentStateModelClass · 0.85

Tested by

no test coverage detected