# Vasil hard fork

Start by tweaking your `config.json` file:

{% tabs %}
{% tab title="Linux" %}

```
sed -i configuration/config.json \
-e 's/LastKnownBlockVersion-Major":6/LastKnownBlockVersion-Major":7/'
```

{% endtab %}

{% tab title="macOS" %}

```bash
gsed -i configuration/config.json \
-e 's/LastKnownBlockVersion-Major":6/LastKnownBlockVersion-Major":7/'
```

{% endtab %}
{% endtabs %}

Create the update proposal to move to protocol version 7.0:

```bash
cardano-cli governance create-update-proposal \
--genesis-verification-key-file genesis-keys/non.e.shelley.000.vkey \
--genesis-verification-key-file genesis-keys/non.e.shelley.001.vkey \
--out-file transactions/update.v7.proposal \
--epoch $(cardano-cli query tip --testnet-magic 42 | jq .epoch) \
--protocol-major-version "7" \
--protocol-minor-version "0" 
```

```bash
CHANGE=$(($(cardano-cli query utxo --address $(cat pool1/payment.addr) --testnet-magic 42 --out-file  /dev/stdout | jq -cs '.[0] | to_entries | .[] | .value.value.lovelace') - 1000000))
```

```bash
cardano-cli transaction build-raw \
--alonzo-era \
--fee 1000000 \
--invalid-hereafter $(expr $(cardano-cli query tip --testnet-magic 42 | jq .slot) + 1000) \
--tx-in $(cardano-cli query utxo --address $(cat pool1/payment.addr) --testnet-magic 42 --out-file  /dev/stdout | jq -r 'keys[]') \
--tx-out $(cat pool1/payment.addr)+$CHANGE \
--update-proposal-file transactions/update.v7.proposal \
--out-file transactions/update.v7.proposal.txbody
```

```bash
cardano-cli transaction sign \
--tx-body-file transactions/update.v7.proposal.txbody \
--signing-key-file pool1/payment.skey \
--signing-key-file delegate-keys/new.shelley.delegate.000.skey \
--signing-key-file bft1/shelley.001.skey \
--out-file transactions/update.v7.proposal.txsigned
```

```bash
cardano-cli transaction submit --testnet-magic 42 --tx-file transactions/update.v7.proposal.txsigned
```

```bash
cardano-cli query tip --testnet-magic 42
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://cardano-course.gitbook.io/cardano-course/handbook/setting-up-a-local-cluster/vasil-hardfork.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
